इसके लिए MongoDB में डॉट नोटेशन के साथ $group का उपयोग करें।
नमूना डेटा बनाना (नेस्टेड ऑब्जेक्ट के साथ)
> db.demo617.insertOne( {
"clientDetails": {
"Name": "Chris", "Age":32, "Project":"Online Library Management System"
}
} );
> db.demo617.insertOne( {
"clientDetails": {
"Name": "David", "Age":34, "Project":"Online Hospital Management System"
}
} );
> db.demo617.insertOne( {
"clientDetails": {
"Name": "David", "Age":34, "Project":"Online Library Management System"
}
} );
सभी दस्तावेज़ देखना
> db.demo617.find();
{ "clientDetails" : { "Name" : "Chris", "Age" : 32, "Project" : "Online Library Management System" } }
{ "clientDetails" : { "Name" : "David", "Age" : 34, "Project" : "Online Hospital Management System" } }
{ "clientDetails" : { "Name" : "David", "Age" : 34, "Project" : "Online Library Management System" } }
नेस्टेड ऑब्जेक्ट पर ग्रुप क्वेरी
> db.demo617.aggregate({ $group : {_id : "$clientDetails.Project", All : { $sum : 1 }} });
परिणाम:
{ "_id" : "Online Hospital Management System", "All" : 1 }
{ "_id" : "Online Library Management System", "All" : 2 }
व्याख्या: डॉट नोटेशन "$clientDetails.Project" नेस्टेड फील्ड तक पहुंचता है। $group प्रोजेक्ट नाम के अनुसार दस्तावेज़ों को समूहित करता है और $sum: 1 प्रत्येक समूह की गणना करता है।