কম্পিউটার টিউটোরিয়াল

MongoDB-এ নির্দিষ্ট ছাত্রের স্কোর যোগফল বের করা


নির্দিষ্ট ছাত্রের মোট স্কোর গণনা

MongoDB-এ নির্দিষ্ট ছাত্রের সব স্কোর যোগ করতে aggregate() এর সাথে $match এবং $sum ব্যবহার করা হয়।

নমুনা ডেটা তৈরি

> db.demo434.insertOne({ "Name": "Chris", "Score": 45 })
> db.demo434.insertOne({ "Name": "David", "Score": 55 })
> db.demo434.insertOne({ "Name": "Chris", "Score": 55 })

সমস্ত ডকুমেন্ট দেখানো

> db.demo434.find()

আউটপুট:

{ "_id": ObjectId("..."), "Name": "Chris", "Score": 45 }
{ "_id": ObjectId("..."), "Name": "David", "Score": 55 }
{ "_id": ObjectId("..."), "Name": "Chris", "Score": 55 }

নির্দিষ্ট ছাত্রের স্কোর যোগ করার কোয়েরি

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

ফলাফল:

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

ব্যাখ্যা

  • $match: শুধু "Chris" নামের ডকুমেন্টগুলো ফিল্টার করে
  • $group: _id: null দিয়ে সব মিলে যাওয়া ডকুমেন্ট একসাথে গ্রুপ করে
  • $sum: Score ফিল্ডের মানগুলো যোগ করে TotalScore তৈরি করে

এই প্যাটার্নটি যেকোনো чисলাত্মক ফিল্ডের যোগফল বের করতে ব্যবহার করা যায়।

  1. MongoDB-এ ডুপ্লিকেট কলাম ভ্যালু 가진 ডকুমেন্টের স্কোর যোগ করা

  2. MongoDB Aggregation-এ নির্দিষ্ট ফিল্ড মান মэтচ করা ($match স্টেজ)

  3. MongoDB Aggregation-এ নির্দিষ্ট ফিল্ড মান অনুযায়ী ডকুমেন্ট ফিল্টার করা

  4. MongoDB এগ্রিগেশন ও প্রজেকশন: $project স্টেজ ব্যবহার