分析表达式源

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

分析组件已弃用。我们建议查看 JSON Facet API 中找到的类似功能。如果 JSON Facet 未涵盖您需要的功能,请通知项目。

这些来源可以是使用 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:双精度浮点数