分析表达式源

表达式源是在分析表达式中聚合的数据的来源。

分析组件已弃用。我们建议研究 JSON 分面 API 中发现的类似功能。如果 JSON 分面当前未涵盖您需要的功能,请通知项目。

这些源可以是使用 docValues 索引的 Solr 字段,也可以是常量。

支持的字段类型

支持以下 Solr 字段类型。这些类型的字段可以是多值或单值。

分析表达式中使用的所有字段必须启用 DocValues

字符串

StrField

布尔值

BoolField

整数

TrieIntField
IntPointField

长整型

TrieLongField
LongPointField

浮点数

TrieFloatField
FloatPointField

双精度浮点数

TrieDoubleField
DoublePointField

日期

TrieDateField
DatePointField

多值字段去重

除 PointFields 之外的所有多值字段类型都进行了去重,这意味着在索引期间将删除同一字段的重复值。为了保存重复项,您必须使用 PointField 类型。

常量

常量可以包含在表达式中,以便与字段和函数一起使用。可用常量如下所示。常量不需要用任何函数包围来定义它们,它们可以像表达式中的字段一样使用。

字符串

指定常量字符串有两种可能的方法,如下所示。

  • 用双引号括起来,在引号内,"\ 都必须使用 \ 字符转义。

    "Inside of 'double' \\ \"quotes\""Inside of 'double' \ "quotes"

  • 用单引号括起来,在引号内,'\ 都必须使用 \ 字符转义。

    'Inside of "single" \\ \'quotes\''Inside of "double" \ 'quotes'

日期

日期可以像在 Solr 查询中一样指定。只需使用 ISO-8601 格式。有关更多信息,请参阅日期格式和日期数学

  • 2017-07-17T19:35:08Z

数值

任何非十进制的数字都将被读取为整数,如果数字太大而超出整数的范围,则会被读取为长整数。所有十进制数字都将被读取为双精度浮点数。

  • -123421:整数

  • 800000000000:长整数

  • 230.34:双精度浮点数