我有一个集合,其中的文档有嵌套数组,我想选择只包含低级数组的部分,这可能吗?
我尝试过这个方法,但它不起作用:
db.collection.find({},{'family.children.$.toys' :1})
文档示例
{
"id":1000,
"name": "Bob",
"surname":"The Builder",
"family":{
"size":2,
"status": "happy",
"children":[{
"name":"Jim",
"school": "St. Mary",
"toys":[{
"name":"Lego"
},
{
"name":"Playstation"
}]
},
{
"name":"Kate",
"school": "St. Mary",
"toys":[{
"name":"Xbox"
},
{
"name":"Barbie"
}]
}
]
}
}
期望结果(仅提取玩具列表):
{
_id:1000,
family:{
childrens:[{
toys:[{
name:Lego
},
{
name:Playstation
}]
},
{
toys:[{
name:Xbox,
},
{
name:Barbie
}]
}
]
}}