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

MongoDB如何查询包含指定carrier_id值的数组元素所属的公司文档

MongoDB 匹配数组嵌套字段查询方案

你可以直接使用MongoDB的嵌套数组字段点查询语法实现需求,这是最简单的实现方式:

// 替换<集合名>为你的实际集合名,替换<目标carrier_id>为你要查询的id值
db.<集合名>.find({
  "carriers.carrier_id": "<目标carrier_id>"
})

这种写法会自动遍历carriers数组的所有元素,只要有任意一个元素的carrier_id等于目标值,就会返回对应的公司文档。

如果你后续需要对数组内同一个元素匹配多个条件(比如同时要求priority为1且carrier_id匹配),可以使用$elemMatch运算符,单条件场景下两种写法效果和性能完全一致:

db.<集合名>.find({
  carriers: {
    $elemMatch: {
      carrier_id: "<目标carrier_id>"
      // 可追加同元素的其他匹配条件,如 priority: 1
    }
  }
})

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 12:12:02