可以使用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操作符或重新设计数据模型

es 对数组字段使用in查询

原文地址: https://www.cveoy.top/t/topic/ht4D 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录