假设每一条记录有一个叫做pv的整数字段,求整个集合中这个字段的和可以用如下方法: use testswitched to db test db.statistics.insertcreated_on: "2011-10-01", pv: 100 db.statistics.insertcreated_on: "2011-10-02", pv: 200 db.statistics.insertcreat

假设每一条记录有一个叫做pv的整数字段,求整个集合中这个字段的和可以用如下方法:

> use test
switched to db test
> db.statistics.insert({created_on: "2011-10-01", pv: 100})
> db.statistics.insert({created_on: "2011-10-02", pv: 200})
> db.statistics.insert({created_on: "2011-10-03", pv: 300})
> var reduce = function(key, values){
...     var count=0;
...     values.forEach(function(v) {
...        count+=v.pv;
...     });
...     return {count: count};
... };
> var s = db.statistics.find();
> reduce("total_pv", s);
登录后复制

结果如下:

{ "count" : 600 }
登录后复制

Link to this post!

原文地址:在MongoDB中sum某个字段, 感谢原作者分享。

09-15 08:57