我正在使用mongodb aggregate
在我的节点服务器上获取已经过滤的数据。
Some.aggregate([
{ $group: {
_id: '$model',
someAvg: { $avg: '$some' },
someAvg2: { $avg: '$some2' },
someSum3: { $sum: '$some3' }
}}
], function (err, results) {
...
但所有这一切都会返回没有重复的模型,并平均some, some2, some3
这些模型。当您使用find时,您可以指定类似的内容:
Some.find({model:"Thinkpad T430"}, function(...
因此,它仅返回model
值为"Thinkpad T430"
的数据销售。
有没有办法与aggregate
做类似的事情?
答案 0 :(得分:1)
Some.aggregate([
{ $match : {
model:"Thinkpad T430"
}},
{ $group: {
_id: '$model',
someAvg: { $avg: '$some' },
someAvg2: { $avg: '$some2' },
someSum3: { $sum: '$some3' }
}}
], function (err, results) {
...