数据库字段是数组 查询条件也是数组 如何实现聚合查询?
例如:
数据库X中
A记录/记录了允许吃苹果的人
{
name: "苹果",
canUse: ["张三","王五","赵六","孙七"]
}
B记录/记录了允许吃橘子的人
{
name: "橘子",
canUse: ["张三","李四","赵六"]
}
C记录/记录了允许吃芒果的人
{
name: "芒果",
canUse: ["李四","王五","赵六","孙七"]
}
现要查询 ["王五","李四","孙七"] 允许吃的水果记录行
1 个回复
lelele - king
db.collection('****')
.aggregate()
.unwind('$canUse')
.match({
canUse: db.command.in(["王五", "李四", "孙七"])
})
.end()