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

如何使用值数组过滤JSON字段 排除指定manufacturerID查询结果

按ID数组排除匹配结果的实现方式

你当前写的查询逻辑本身是对的,核心靠not搭配in的条件组合就能实现批量排除:

  • 提前把要排除的所有manufacturerID整理成数组,传到not.in的条件值里,就会自动过滤掉ID命中这个数组的所有记录,你现在写的排除["28", "266", "213", "234"]这几个ID的逻辑完全符合需求。
  • 唯一要注意的是值类型要匹配:如果库里存的manufacturerID是数字类型,就别给排除列表里的值加引号传字符串,不然类型对不上,过滤会失效。
JSON字段是否支持该过滤操作

完全支持,不需要额外做特殊处理:

  • 只要通过path参数写对JSON字段里的属性层级就行,你现在写的path: ["manufacturerID"]就是指定取Manufacturer字段下的manufacturerID属性做过滤目标,写法是对的。
  • 如果属性有多层嵌套,比如manufacturerID藏在Manufacturer字段下的info子层里,就把path改成["info", "manufacturerID"],按实际存储的层级顺次填路径就能正常过滤。

你当前尝试的查询写法如下,在支持文档型JSON路径查询的存储引擎(比如MongoDB、PostgreSQL的JSONB字段、主流文档类搜索引擎)里都能正常运行,实现预期的排除效果:

{
  Manufacturer: {
    path: ["manufacturerID"],
    not: { in: ["28", "266", "213", "234"] },
  },
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 00:09:30