是否可以使用MongoDB将聚合函数中的映射值分组?

时间:2013-11-27 13:44:04

标签: mongodb aggregation-framework

我的数据集如下:

{
    _id: "joe",
    email: "joe@joe.com",
    attributes: [ "eyes" : "blue", "height" : "6'0" ]
}

是否可以通过对属性映射中的特定值进行分组来执行聚合?

I.E

{ 
    $group : { 
        _id: { eyes: "$eyes" }, 
        number: { $sum: 1 } 
    } 
},

1 个答案:

答案 0 :(得分:2)

您可以按照以下方式执行此操作:

db.myObject.aggregate(
  {$unwind : "$attributes"}, 
  {$group : {_id : {eyes : "$attributes.eyes"}, number : {$sum:1}}}
);