如何使用aggregate()在MongoDB中计算总和?

mongodbdatabasebig data analytics更新于 2026/2/13 15:52:17

要获取总和,请使用$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 }

相关文章