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

MongoDB Aggregate-এ $avg ব্যবহার করে গড় মান বের করা

MongoDB-এ Aggregate Pipeline-এ $avg অ্যাকুমুলেটর ব্যবহার

$avg অ্যাকুমুলেটর $group স্টেজে ব্যবহার করে একটি ফিল্ডের গড় মান বের করা যায়। _id: null দিলে সকল ডকুমেন্ট এক গ্রুপে পড়ে (গ্লোবাল গড়)।

উদাহরণ: ডেটা ইনসার্ট

> db.demo159.insertOne({"Score":50});
{ "acknowledged" : true, "insertedId" : ObjectId("5e3557b2fdf09dd6d0853a01") }
> db.demo159.insertOne({"Score":70});
{ "acknowledged" : true, "insertedId" : ObjectId("5e3557b6fdf09dd6d0853a02") }
> db.demo159.insertOne({"Score":60});
{ "acknowledged" : true, "insertedId" : ObjectId("5e3557c4fdf09dd6d0853a03") }

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

> db.demo159.find();

আউটপুট:

{ "_id" : ObjectId("5e3557b2fdf09dd6d0853a01"), "Score" : 50 }
{ "_id" : ObjectId("5e3557b6fdf09dd6d0853a02"), "Score" : 70 }
{ "_id" : ObjectId("5e3557c4fdf09dd6d0853a03"), "Score" : 60 }

গড় বের করার কোয়ারি

> db.demo159.aggregate([{$group: {_id:null, AverageValue: {$avg:"$Score"} } }])

আউটপুট:

{ "_id" : null, "AverageValue" : 60 }

ব্যাখ্যা

  • {_id:null} — কোনো গ্রুপিং কী নেই, সকল ডকুমেন্ট একসাথে।
  • AverageValue: {$avg: "$Score"} — Score ফিল্ডের গড়।
  • ফলাফল: (50+70+60)/3 = 60।

বিস্তারিত: গোষ্ঠীवार গড় বের করতে {_id: "$category", AverageValue: {$avg: "$Score"}} ব্যবহার করুন। $avg null বা অনুপস্থিত ফিল্ডকে বাদ দেয়।

  1. MongoDB শেলে ডেট ফরম্যাট করার পদ্ধতি

  2. MongoDB-এ রেঞ্জ কোয়ারি এবং সর্ট লিমিট ব্যবহার করা

  3. MongoDB-তে অ্যারের ভ্যালু অনুযায়ী কালেকশন সর্ট করা (aggregate + $unwind + $sort)

  4. MySQL-এ AVG() ফাংশন ব্যবহার করে ডাটাবেজ রো জুড়ে গড় মান বের করা