FT.AGGREGATE - Amazon 内存 DB

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

FT.AGGREGATE

FT.SEARCH 命令的超集,允许对查询表达式选择的键进行大量额外处理。

语法

FT.AGGREGATE index query [LOAD * | [count field [field ...]]] [TIMEOUT timeout] [PARAMS count name value [name value ...]] [FILTER expression] [LIMIT offset num] [GROUPBY count property [property ...] [REDUCE function count arg [arg ...] [AS name] [REDUCE function count arg [arg ...] [AS name] ...]] ...]] [SORTBY count [ property ASC | DESC [property ASC | DESC ...]] [MAX num]] [APPLY expression AS name]
  • FILTER、LIMIT、GROUPBY、SORTBY 和 APPLY 子句可以任意次数重复,并且可以自由混合使用。它们按指定的顺序应用,其中一个子句的输出作为下一个子句的输入。

  • 在上述语法中,“属性”要么是在 FT.CREATE 命令中为此索引声明的字段,要么是之前的 APPLY 子句或 REDUCE 函数的输出。

  • LOAD 子句仅限于加载已在索引中声明的字段。“LOAD *”将加载索引中声明的所有字段。

  • 支持以下 reducer 函数:COUNT、COUNT_DISTINCTISH、SUM、MIN、MAX、AVG、STDDEV、QUANTILE、TOLIST、FIRST_VALUE 和 RANDOM_SAMPLE。有关更多信息,请参阅聚合

  • LIMIT <offset><count>:保留从 <offset> 开始的记录,并持续保留 <count> 条记录,所有其他记录都将丢弃。

  • PARAMS:键值对数量的两倍。可以在查询表达式中引用参数键/值对。有关更多信息,请参阅向量搜索查询表达式

Return

返回数组或错误响应。

  • 如果操作成功完成,则返回一个数组。第一个元素是没有特殊含义的整数(应忽略)。其余元素是最后一个阶段输出的结果。每个元素都是由字段名称和值对组成的数组。

  • 如果索引正在回填,该命令会立即返回错误响应。

  • 如果超时,该命令将返回错误响应。