下面是我收集的json
部分:MongoDB聚集对象数组的对象?
[{"company":"Lenovo", "models":
[{"model":"ThinkPad T400", "gens":
[{"gen":"3", "start":2012},
{"gen":"2", "start":2008},
{"gen":"1", "start":2004}]
}...]
}...]
我想先到了一个aggregate命令将返回我下面的:
[{ "_id":"Lenovo",
"models":[{ "model": "ThinkPad T400",
"gens":["1","2","3"]
}...]
}...]
我曾尝试以下汇总命令,但没有奏效:
db.makes.aggregate([{
$group:{
_id: '$company',
models: { $push: {
model: "$models.model",
gen: "$models.gens.gen"
}}
}
}])
我得到这样的结果:
[{ "_id":"Lenovo",
"models":[{ "model": ["ThinkPad T400"],
"gens":[ ["1","2","3"] ]
}...]
}...]
这可能是因为我的每个对象都有一个对象(模型)数组,并且对象也有一个对象数组(Gens)。
什么是对MongoDB的正确要求,会返回我的预期结果?