MQ8*_*Q87 2 mongodb mongodb-query aggregation-framework
我有一个文档嵌套数组的集合,我只想选择下面的数组,有可能吗?
我已经尝试过了,但是没有用:
db.collection.find({},{'family.children.$.toys' :1})
Run Code Online (Sandbox Code Playgroud)
文件范例
{
"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"
}]
}
]
}
}
Run Code Online (Sandbox Code Playgroud)
预期结果(仅提取玩具清单):
{
_id:1000,
family:{
childrens:[{
toys:[{
name:Lego
},
{
name:Playstation
}]
},
{
toys:[{
name:Xbox,
},
{
name:Barbie
}]
}
]
}}
Run Code Online (Sandbox Code Playgroud)
db.collection.find({},{'id':1, 'family.children.toys' :1, '_id':0})
Run Code Online (Sandbox Code Playgroud)
样本输出:
{
"id" : 1000,
"family" : {
"children" : [
{
"toys" : [
{
"name" : "Lego"
},
{
"name" : "Playstation"
}
]
},
{
"toys" : [
{
"name" : "Xbox"
},
{
"name" : "Barbie"
}
]
}
]
}
}
Run Code Online (Sandbox Code Playgroud)