MongoDB如何通过单条find查询匹配单个字段的多个指定值
MongoDB多_id匹配查询实现
测试集合数据
当前测试集合的文档内容如下:
[ { "_id": "apples", "qty": 5, "packing": "cardboard" }, { "_id": "bananas", "qty": 7 }, { "_id": "oranges", "qty": { "in stock": 8, "ordered": 12 } }, { "_id": "avocados", "qty": "fourteen" } ]
需求:编写单条find语句,仅返回_id为apples和oranges的文档。
正确查询语句
使用MongoDB的$in查询操作符即可实现,语句如下:
// 请将collectionName替换为你的实际集合名称 db.collectionName.find({ _id: { $in: ["apples", "oranges"] } })
说明
$in操作符用于匹配字段值属于指定数组的所有文档,是这类多固定值精确匹配场景的标准写法- 由于
_id默认存在唯一索引,该查询的执行效率很高 - 执行后将仅返回
apples、oranges对应的2条文档,不会返回bananas和avocados的记录。
内容的提问来源于stack exchange,提问作者Pranjit Borah
相关产品推荐
相关产品推荐

