要获得总和,请将$sum和一起使用aggregate()
。让我们创建一个包含文档的集合-
> db.demo337.insertOne({"Amount":100}); { "acknowledged" : true, "insertedId" : ObjectId("5e5231e5f8647eb59e56209b") } > db.demo337.insertOne({"Amount":500}); { "acknowledged" : true, "insertedId" : ObjectId("5e5231e9f8647eb59e56209c") } > db.demo337.insertOne({"Amount":400}); { "acknowledged" : true, "insertedId" : ObjectId("5e5231ebf8647eb59e56209d") }
在find()
方法的帮助下显示集合中的所有文档-
> db.demo337.find();
这将产生以下输出-
{ "_id" : ObjectId("5e5231e5f8647eb59e56209b"), "Amount" : 100 } { "_id" : ObjectId("5e5231e9f8647eb59e56209c"), "Amount" : 500 } { "_id" : ObjectId("5e5231ebf8647eb59e56209d"), "Amount" : 400 }
以下是在MongoDB中计算总和的查询-
> db.demo337.aggregate( ... [ ... { ... $group: ... { ... _id:null, ... totalAmount: { $sum:"$Amount" } ... } ... } ... ] ... );
这将产生以下输出-
{ "_id" : null, "totalAmount" : 1000 }