Aggregation Framework-এ $group এবং $sum ব্যবহার করে টোটাল বের করা
কলেকশনের সব ডকুমেন্টের নির্দিষ্ট একটি নмериক ফিল্ডের মানগুলো যোগ করে টোটাল বের করতে aggregate() পাইপলাইন ব্যবহার করা হয়।
নমুনা ডেটা
> db.sumOfValueDemo.insertOne({"Name":"Larry","Amount":14.50});
> db.sumOfValueDemo.insertOne({"Name":"Mike","Amount":15.68});
> db.sumOfValueDemo.insertOne({"Name":"Carol","Amount":50.32});
> db.sumOfValueDemo.insertOne({"Name":"David","Amount":120.90});
Aggregation কোয়েরি
> db.sumOfValueDemo.aggregate([
{ $group: { _id: '', "Amount": { $sum: '$Amount' } } },
{ $project: { _id: 0, "TotalAmount": '$Amount' } }
]);
ফলাফল:
{ "TotalAmount" : 201.4 }
ব্যাখ্যা: প্রথম স্টেজে সব ডকুমেন্ট গ্রুপ করে $sum: "$Amount" দিয়ে যোগফল বের করা হয়েছে, দ্বিতীয় স্টেজে $project দিয়ে আউটপুট ফরম্যাট করা হয়েছে।
সরল পদ্ধতি (MongoDB 5.0+): db.collection.aggregate([{ $group: { _id: null, total: { $sum: "$Amount" } } }])