本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
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、GROUPBY、 LIMITSORTBY和 APPLY子句可以任意順序重複多次,並且可以自由混合。它們會依照指定順序套用,並輸出一個子句,以饋送下一個子句的輸入。
在上述語法中,「屬性」是在此索引的 FT.CREATE 命令中宣告的欄位,或上一個APPLY子句或REDUCE函數的輸出。
LOAD 子句僅限於載入索引中宣告的欄位。「LOAD*」將載入索引中宣告的所有欄位。
支援下列還原器函數:COUNT、COUNT_DISTINCTISH、SUM、MINMAX、AVG、STDDEV、、QUANTILE、TOLIST、_ FIRSTVALUE和 RANDOM_SAMPLE。如需詳細資訊,請參閱彙總
LIMIT <offset> <count>: 保留從 <offset> 開始並繼續最多 <count> 的記錄,所有其他記錄都會捨棄。
PARAMS:金鑰值對數量的兩倍。可以在查詢表達式內參考參數鍵/值對。
傳回
傳回陣列或錯誤回應。
如果操作成功完成,則會傳回陣列。第一個元素是沒有特定意義的整數 (應該忽略)。其餘元素是最後一個階段的結果輸出。每個元素都是欄位名稱和值對的陣列。
如果索引正在進行回填,命令會立即傳回錯誤回覆。
如果達到逾時,命令會傳回錯誤回應。