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

MongoDB-এ অ্যারে এলিমেন্টের ফ্রিকোয়েন্সি গণনা করা (অ্যাগ্রিগেশন)

অ্যাগ্রিগেশন পাইপলাইনে $unwind, $group, $sum, $replaceRoot ব্যবহার করে প্রতিটি এলিমেন্টের ফ্রিকোয়েন্সি বের করুন।

নমুনা ডেটা

> db.demo184.insertOne({"Names": ["Chris", "David", "Bob"]});
> db.demo184.insertOne({"Names": ["Chris", "Mike"]});
> db.demo184.insertOne({"Names": ["Chris", "Bob", "Carol"]});

পাইপলাইন

> db.demo184.aggregate([
    {"$unwind": "$Names"},
    {"$group": {"_id": "$Names", "count": {"$sum": 1}}},
    {"$group": {"_id": null, "counts": {"$push": {"k": "$_id", "v": "$count"}}}},
    {"$replaceRoot": {"newRoot": {"$arrayToObject": "$counts"}}}
])

ফলাফল

{ "Carol": 1, "David": 1, "Chris": 3, "Bob": 2, "Mike": 1 }
  1. MongoDB-তে সাবডকুমেন্টের অ্যারে কুয়েরি

  2. MongoDB-তে অ্যারে এলিমেন্টের সংখ্যা গুনে নতুন ফিল্ডে দেখানো ($size)

  3. MongoDB-তে $slice ব্যবহার করে অ্যারে থেকে একমাত্র এলিমেন্ট বের করা

  4. MongoDB-তে অ্যাগ্রিগেশন দিয়ে অ্যারে এলিমেন্টের গড় (Average) বের করা ($avg)