फ्रीक्वेंसी गिनने के लिए aggregate() में $group के साथ ग्रुप करें।
नमूना डेटा बनाना
> db.demo635.insertOne({Name:"Chris"});
> db.demo635.insertOne({Name:"David"});
> db.demo635.insertOne({Name:"David"});
> db.demo635.insertOne({Name:"Chris"});
> db.demo635.insertOne({Name:"Bob"});
> db.demo635.insertOne({Name:"Chris"});
सभी दस्तावेज़ देखना
> db.demo635.find();
{ "Name" : "Chris" }
{ "Name" : "David" }
{ "Name" : "David" }
{ "Name" : "Chris" }
{ "Name" : "Bob" }
{ "Name" : "Chris" }
फ्रीक्वेंसी गिनने की एग्रीगेशन क्वेरी
> db.demo635.aggregate([
{ $unwind: "$Name" },
{ $group: { "_id": "$Name", TotalFrequency: { $sum : 1 } } }
] );
परिणाम:
{ "_id" : "David", "TotalFrequency" : 2 }
{ "_id" : "Bob", "TotalFrequency" : 1 }
{ "_id" : "Chris", "TotalFrequency" : 3 }
नोट: यहां $unwind अनावश्यक है क्योंकि Name एक ऐरे नहीं है, बल्कि स्ट्रिंग फील्ड है। सीधे $group भी काम करेगा। $unwind ऐरे फील्ड्स के लिए उपयोगी होता है।