इसके लिए MongoDB में समुच्चय () का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं -
> db.demo718.insertOne(... {... "id":101,... "विवरण":... {... "अन्य विवरण":["क्रिस", "माइक", "सैम"], "ग्रुपनाम":["ग्रुप -1"], "जानकारी":[]...}...}...); {"स्वीकृत":सच, "सम्मिलित आईडी":ऑब्जेक्ट आईडी (" 5eaae25843417811278f5880")}> db.demo718.insertOne(... {... "id":102,... "विवरण":... {... "अन्य विवरण":["क्रिस", "डेविड" ], "GroupName":["Group-1"], "Info":[]...}...}...);{ "स्वीकृत" :सच, "insertId" :ObjectId("5eaae25943417811278f5881") }पूर्व>संग्रह से सभी दस्तावेज़ों को खोजने () विधि की सहायता से प्रदर्शित करें -
> db.demo718.find();यह निम्नलिखित आउटपुट देगा -
{ "_id" :ObjectId("5eaae25843417811278f5880"), "id" :101, "details" :{ "OtherDetails" :[ "Chris", "Mike", "Sam" ], "GroupName" :[ " Group-1"], "जानकारी" :[ ] } }{ "_id" :ObjectId("5eaae25943417811278f5881"), "id" :102, "details" :{ "OtherDetails" :[ "Chris", "David" ] , "GroupName" :[ "Group-1" ], "Info" :[ ] } }सभी दस्तावेज़ों में अलग-अलग मानों को गिनने के लिए क्वेरी निम्नलिखित है -
> db.demo718.aggregate([... {... $अनविंड:"$details.GroupName"...},... {... $match:{... "details.GroupName ":"ग्रुप-1"...}...},... {... $अनविंड:"$details.OtherDetails"...},... {... $group:{.. _id:"$details.GroupName",... OtherDetailsUnique:{... $addToSet:"$details.OtherDetails"...}...}...},... {... $project :{... _id :0,... GROUP_NAME:"$_id",... OtherDetailsUniqueCount:{... $size:"$OtherDetailsUnique"...}...}...}... ])यह निम्नलिखित आउटपुट देगा -
{ "GROUP_NAME" :"Group-1", "OtherDetailsUniqueCount" :4 }