You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用RedisSearch检索RedisJSON中的对象数组?

Redis JSON索引无结果问题解决与价格检索实现

问题根源

你创建索引时使用的路径$.myDoc.books.price存在错误:myDoc是Redis的键名,并非JSON文档内部的字段,JSON文档的根路径为$;同时需要用[*]遍历books数组中的每个元素,才能正确索引数组内对象的price字段。

正确操作步骤

1. 创建正确的索引

执行以下命令创建索引,确保路径指向数组内的每个价格字段:

FT.CREATE docIdx ON JSON SCHEMA $.books[*].price AS price NUMERIC

如果需要同时索引书籍标题,可扩展索引:

FT.CREATE docIdx ON JSON SCHEMA $.books[*].title AS title TEXT $.books[*].price AS price NUMERIC

2. 执行检索查询

使用以下命令检索价格≥8的书籍记录:

FT.SEARCH docIdx '@price:[8 +inf]'

若需仅返回标题和价格字段,可添加RETURN参数:

FT.SEARCH docIdx '@price:[8 +inf]' RETURN 2 title price

3. 验证文档存在性(可选)

若仍有疑问,可先确认JSON文档已正确存入Redis:

JSON.GET myDoc

内容的提问来源于stack exchange,提问作者Benson OO

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 23:15:35