My Mongo系列目前如下所示:
[ {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' },
...
...
]
我正在使用mongoose进行查询。
目标是获得类似于下面的结果
{ 'model' : 'audi', count: '20'
'model: : 'nissan' , count: '30'
..
}
,即计算特定模型在集合中出现的次数。
到目前为止,我有:var query = Model.aggregate.group({_id: 'model'}, count: {$sum: 1});
query.exec();
但上述方法不起作用。
答案 0 :(得分:1)
test.aggregate(
[
{
$group: model,
count: { $sum: 1 }
}
}
]
)
答案 1 :(得分:1)
以下查询对我有用:
Model.aggregate([
{
$group: {
_id: '$model', // model is the name of the field.. but we have to use $model
count: {$sum : 1}
}
}
])