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

如何在Redis Search中使用OR逻辑查询两个不同字段?

正确的RedisSearch查询命令

要查询redisData中满足id1=1或者id2=2的数据,你需要使用RedisSearch正确的逻辑OR语法,每个条件需用括号包裹以避免解析歧义。

正确命令写法

使用|作为OR操作符:

FT.SEARCH idx:redisData "(@id1:{1}) | (@id2:{2})"

或者使用OR关键字(效果完全一致):

FT.SEARCH idx:redisData "(@id1:{1}) OR (@id2:{2})"

关键注意事项

  • 必须为每个条件单独添加括号,这是RedisSearch解析逻辑表达式的硬性要求,你之前的错误写法正是因为缺少括号导致语法无效
  • 匹配语法要和字段索引类型对应:
    • 如果id1/id2是TAG类型,用{}包裹值(如@id1:{1})
    • 如果是NUMERIC类型,需改用范围匹配语法@id1:[1 1](表示精确等于1)
  • 确保idx:redisData索引已正确创建,且id1、id2被包含在索引的可搜索字段中

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 06:30:36