ভূমিকা
MongoDB-এ কোনো ডকুমেন্টের ভেতরে নেস্ট করা অ্যারে অবজেক্টের নির্দিষ্ট নümerিক ফিল্ডের যোগফল বের করতে এগ্রিগেশন ফ্রেমওয়ার্কের $unwind এবং $group স্টেজ ব্যবহার করা হয়।
নমুনা ডেটা তৈরি
sumEveryFieldDemo কালেকশনে একটি ডকুমেন্ট ইনসার্ট করা হয়েছে, যেখানে PlayerDetails নামে অবজেক্টের অ্যারে রয়েছে। প্রতিটি অবজেক্টে PlayerScore ফিল্ড রয়েছে।
ডকুমেন্ট প্রদর্শন
{ "_id" : 101, "PlayerDetails" : [ { "PlayerName" : "John", "PlayerScore" : 1000 }, { "PlayerName" : "Carol", "PlayerScore" : 2000 }, { "PlayerName" : "Sam", "PlayerScore" : 3000 } ] }এগ্রিগেশন কোয়েরি
1.
$unwind: "$PlayerDetails"- অ্যারে প্রতিটি এলিমেন্টকে আলাদা ডকুমেন্টে রূপান্তর।
2.$group-_idদিয়ে গ্রুপ করে$sumঅ্যাকিউমুলেটর দিয়েPlayerScoreযোগফল করা।ফলাফল
টিপস: যদি একাধিক ডকুমেন্ট থাকে, তবে
_id: "$_id"গ্রুপিং নিশ্চিত করবে প্রতিটি পেরেন্ট ডকুমেন্টের জন্য আলাদা যোগফল বের হয়।