Computer >> Máy Tính >  >> Lập trình >> MongoDB

Phép toán tổng hợp / toán học MongoDB để tổng điểm của một học sinh cụ thể

Để tính tổng, hãy sử dụng tổng hợp () cùng với $ sum. Hãy để chúng tôi tạo một bộ sưu tập với các tài liệu -

> db.demo434.insertOne({"Name":"Chris","Score":45});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e771603bbc41e36cc3cae93")
}
> db.demo434.insertOne({"Name":"David","Score":55});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e77161abbc41e36cc3cae94")
}
> db.demo434.insertOne({"Name":"Chris","Score":55});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e771624bbc41e36cc3cae95")
}

Hiển thị tất cả các tài liệu từ một bộ sưu tập với sự trợ giúp của phương thức find () -

> db.demo434.find();

Điều này sẽ tạo ra kết quả sau -

{ "_id" : ObjectId("5e771603bbc41e36cc3cae93"), "Name" : "Chris", "Score" : 45 }
{ "_id" : ObjectId("5e77161abbc41e36cc3cae94"), "Name" : "David", "Score" : 55 }
{ "_id" : ObjectId("5e771624bbc41e36cc3cae95"), "Name" : "Chris", "Score" : 55 }

Sau đây là truy vấn tổng điểm tom của một học sinh cụ thể -

> db.demo434.aggregate([
...    { "$match": { "Name": "Chris"} },
...    { "$group": { "_id": null, "TotalScore": { "$sum": "$Score" } } }
... ]);

Điều này sẽ tạo ra kết quả sau -

{ "_id" : null, "TotalScore" : 100 }