कुछ ऐसा करना चाहिए;
db.example.aggregate(
{
$group: {
_id: { age: "$age", gender: "$gender" },
names: { $addToSet: "$name" }
}
},
{
$group: {
_id: { age: "$_id.age" },
children: { $addToSet: { gender: "$_id.gender", names:"$names" } }
}
}
)
...जो परिणाम देता है;
{
"_id" : {
"age" : 1
},
"children" : [
{ "gender" : "m", "names" : [ "G", "A" ] },
{ "gender" : "f", "names" : [ "J", "D" ] }
]
},
...
अगर आप चाहते हैं कि उम्र _id
. हो जैसा कि आपके उदाहरण में है, बस दूसरे समूह के _id
. को बदलें द्वारा;
_id: "$_id.age",