Я нахожусь в процессе изучения RediSearch, и я подумал, что смогу сделать функцию агрегации и наткнуться на контрольно-пропускной пункт.
Кажется, я не могу получить хороший результат.
Для целей тестирования я создал базовый индекс / схему примерно так:
FT.CREATE test SCHEMA field TEXT
FT.ADD test 1A 1 FIELDS field hello
FT.ADD test 2A 1 FIELDS field hello
FT.ADD test 3A 1 FIELDS field hello
FT.ADD test 4A 1 FIELDS field world
Далее я выдал следующий запрос:
FT.AGGREGATE test "*" GROUPBY 1 @field REDUCE COUNT 0 AS agg
Я ожидал, что я получу результат, указывающий, что hello
происходит три раза, а world
происходит один раз ... но вместо этого я получаю следующий результат:
1) (integer) 1
2) 1) "field"
2) (nil)
3) "agg"
4) "4"
Я думал, что это было довольно просто ... но я явно делаю что-то не так.
Кроме того, следующий вывод команды MODULE LIST
:
1) 1) "name"
2) "ft"
3) "ver"
4) (integer) 10300
2) 1) "name"
2) "ReJSON"
3) "ver"
4) (integer) 10001
Любая помощь будет супер.
Спасибо!