MongoDB中sum的方法
MongoDB中求和的方法有以下两种:
聚合管道(Aggregation Pipelines)
以下是MongoDB官网的示例,很清楚。注意,用来统计的 field 的数据类型得是数值类型,不能是字符串,否则统计结果为 0。
Map-Reduce
以下是MongoDB官网的示例,也很清楚。注意,Map-Reduce的数据结果保存在一个新的Collection中;Collection的名字就是out的值。在该示例中即 order_totals。
如果要 sum 的 field 需要数据类型转换,可以在 Map 阶段完成。如下数据:
| 1 | db.orders_str.insert({cust_id:"A123",amount:"500",status:"A"}) | 
Map-Reduce:
| 1 | db.orders_str.mapReduce( | 
输出结果:
| 1 | db.order_totals_str.find({}) | 
DONE!!