数字搜索结果向上舍入。为什么?

上次更新于 2024 年 3 月 22 日

问题

数字搜索结果向上舍入。为什么?

答案

请考虑创建索引、添加 JSON 文档,然后执行搜索的以下示例。

FT.CREATE item_idx ON JSON PREFIX 1 item: SCHEMA id AS id NUMERIC 

JSON.SET item:1 $ '{"id":999999999999999999}'

FT.SEARCH item_idx * RETURN 1 $.id
1) (integer) 1
2) "item:1"
3) 1) "$.id"
   2) "1000000000000000000"

id 字段上的数字索引对值进行了近似,因为数字索引目前的 32 位容量。如果你想管理超出 32 位索引大小支持的范围的数字,你可以将 id 索引为 TAG。在较新的版本中重新测试案例,并参阅发行说明以了解该案例是否已经得到改进。

参考

阅读更多有关数字筛选器的信息