অ্যাগ্রিগেশন পাইপলাইনে $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 }