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

如何编写MongoDB查询语句筛选CITY为BIHAR且region为null的记录

MongoDB嵌套数组多条件查询方案

你需要的正确查询语句如下:

db.collection.find({
  "details.Address": {
    $elemMatch: {
      "CITY": "BIHAR",
      "region": null
    }
  }
})

逻辑说明

  • 采用MongoDB内置的$elemMatch操作符,专门用于匹配数组中至少存在1个元素同时满足所有指定筛选条件
  • 嵌套字段路径details.Address精准定位到需要筛选的数组成员
  • 数组元素内部的两个筛选条件CITY: "BIHAR"和region: null会作用在同一个元素上,完全符合需求
  • 针对你提供的示例数据,该查询会正确返回Name为Anil和Kumar的两条符合要求的记录

避坑提示:不要将两个条件拆开写,如下是错误写法,会匹配数组里不同元素分别满足两个条件的情况,无法保证两个条件作用在同一个地址元素上:

// 错误示例
db.collection.find({
  "details.Address.CITY": "BIHAR",
  "details.Address.region": null
})

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 11:09:03