2015-07-19 133 views
0

我蒙戈集合目前看起来象下面这样:猫鼬的GroupBy查询

[ {model: 'audi' , rent-date: '05-15-15' }, 
{model: 'ford' ,  rent-date: '06-15-15' }, 
{model: 'nissan' , rent-date: '05-15-15' }, 
{model: 'toyota' ,  rent-date: '05-15-15' }, 
{model: 'audi' , rent-date: '05-15-15' }, 
{model: 'audi' , rent-date: '05-15-15' }, 
{model: 'nissan' , rent-date: '05-15-15' }, 
... 
... 
    ] 

我使用的猫鼬进行查询。

目标是获得类似于下面

{ 'model' : 'audi', count: '20' 
    'model: : 'nissan' , count: '30' 
.. 
} 

即算结果一个特定的模式出现在集合中的次数。

到目前为止我有:

var query = Model.aggregate.group({_id: 'model'}, count: {$sum: 1}); 

query.exec(); 

以上不工作,虽然。

回答

1
test.aggregate(
     [ 
      { 
      $group: model, 
       count: { $sum: 1 } 
      } 
      } 
     ] 
    ) 
+0

不找只有奥迪和日产..我在寻找所有型号的数 – runtimeZero

1

下面的查询工作对我来说:

Model.aggregate([ 
{ 
    $group: { 
     _id: '$model', // model is the name of the field.. but we have to use $model 
     count: {$sum : 1} 
    } 
} 
])