我收集了移动设备,我想计算每个制造商的设备并计算每个型号。到目前为止,我所能得到的是:
{ $group : {
_id : "$hw.man",
mantotal : { $sum : 1 },
models : { $addToSet : "$hw.mod" }
} }
result:
[{"_id":"LGE","mantotal":1,"models":["GT540"]},{"_id":"asus","mantotal":1,"models":["Nexus 7"]},{"_id":"samsung","mantotal":3,"models":["GT-I9300","GT-I9200"]}]
或者
{ $group : {
_id : { man : "$hw.man", mod : "$hw.mod" },
total : { $sum : 1 } }
}
result:
[{"_id":{"man":"LGE","mod":"GT540"},"total":1},{"_id":{"man":"asus","mod":"Nexus 7"},"total":1},{"_id":{"man":"samsung","mod":"GT-I9300"},"total":2},{"_id":{"man":"samsung","mod":"GT-I9200"},"total":1}]
我怎样才能达到这样的结果:
{"_id":"samsung","mantotal":3,"models":[{mod: "GT-I9300", modtotal: 2}, {mod: "GT-I9200", modtotal: 1}]}