我正在寻找一种方法来查询这样的集合:
[{
name: "Parent 1",
items: [
{ name: "Child 1", age: "60" },
{ name: "Child at heart", age: "27" }
]
},
{
name: "Parent 2",
items: [
{ name: "Child 3", age: "10" },
{ name: "Child 4", age: "15" },
{ name: "Child at heart", age: "60" }
]
}
]
使用这样的查询:
db.collection.find( 'items.name' => "Child at heart", 'items.age' => "60" )
并获得名称为“Parent 2”的对象的结果。也就是说,我想查询文档以查找包含嵌入项目的文档,该嵌入项目在同一嵌入文档中的名称为“Child at heart”,年龄为“60” 。相反,此查询返回两个文档,“Parent 1”和“Parent 2”。
如何在同一个嵌入文档中的不同字段上使用 $and 条件进行查询?
谢谢。