es 对数组字段使用in查询
可以使用MongoDB的$in操作符来对数组字段进行in查询。$in操作符可以匹配数组字段中任意一个元素的值。
例如,假设有以下文档:
{
"_id": 1,
"name": "Alice",
"interests": ["reading", "traveling", "photography"]
},
{
"_id": 2,
"name": "Bob",
"interests": ["sports", "movies", "music"]
},
{
"_id": 3,
"name": "Charlie",
"interests": ["reading", "music", "cooking"]
}
如果想查找所有喜欢阅读的人,可以使用以下查询:
db.collection.find({ interests: { $in: ["reading"] } })
该查询会返回_id为1和3的文档。
如果要查找所有喜欢阅读或旅行的人,可以使用以下查询:
db.collection.find({ interests: { $in: ["reading", "traveling"] } })
该查询会返回_id为1的文档。
注意,$in操作符在处理大型数组时可能会影响性能。如果数组包含大量元素,可以考虑使用$elemMatch操作符或重新设计数据模型
原文地址: https://www.cveoy.top/t/topic/ht4D 著作权归作者所有。请勿转载和采集!