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

MongoDB高效查询:如何获取含状态为OK的嵌套剧集的文档?

高效查询MongoDB嵌套数组文档的方法

要找出所有包含状态为"OK"的episodes的文档,最高效的实现方式如下:

核心查询语句

直接使用嵌套数组的点符号查询,配合MongoDB的内置匹配逻辑:

db.yourCollection.find({ "seasons.episodes.status": "OK" })

为什么这是最高效的?

  • MongoDB原生支持对嵌套数组字段的直接匹配,当查询条件指定seasons.episodes.status: "OK"时,会自动遍历所有seasons数组元素下的episodes数组,只要其中任意一个episode的status等于"OK",就会返回该文档。
  • 这种写法无需复杂的聚合操作,是最轻量化的查询方式。

进一步优化性能

如果数据集较大,建议给嵌套字段创建复合索引来加速查询:

db.yourCollection.createIndex({ "seasons.episodes.status": 1 })

索引能让MongoDB直接定位到符合条件的文档,避免全表扫描,大幅提升查询速度。

验证逻辑

针对你提供的示例文档,执行上述查询后,该文档会被正确返回——因为它的第一个season下存在一个status为"OK"的episode。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 06:30:54