สำหรับสิ่งนี้ ให้ใช้ $group และภายในนั้น เราต้องทำงานกับ $sum เพื่อเพิ่ม ให้เราสร้างคอลเลกชันด้วยเอกสาร -
> db.demo527.insertOne({"Price":45.5});{
"acknowledged" : true,
"insertedId" : ObjectId("5e8aff2fef4dcbee04fbbbdc")
}
> db.demo527.insertOne({"Price":55.5});{
"acknowledged" : true,
"insertedId" : ObjectId("5e8aff34ef4dcbee04fbbbdd")
}
> db.demo527.insertOne({"Price":100.4});{
"acknowledged" : true,
"insertedId" : ObjectId("5e8aff39ef4dcbee04fbbbde")
}
> db.demo527.insertOne({"Price":200.6});{
"acknowledged" : true,
"insertedId" : ObjectId("5e8aff40ef4dcbee04fbbbdf")
} แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -
> db.demo527.find();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : ObjectId("5e8aff2fef4dcbee04fbbbdc"), "Price" : 45.5 }
{ "_id" : ObjectId("5e8aff34ef4dcbee04fbbbdd"), "Price" : 55.5 }
{ "_id" : ObjectId("5e8aff39ef4dcbee04fbbbde"), "Price" : 100.4 }
{ "_id" : ObjectId("5e8aff40ef4dcbee04fbbbdf"), "Price" : 200.6 } ต่อไปนี้เป็นแบบสอบถามเพื่อรวมบันทึกราคา -
> db.demo527.aggregate([ { $group: { _id:null, totalPrice:{"$sum":"$Price"}} } ]) สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : null, "totalPrice" : 402 }