यह सुनिश्चित करने के लिए $addToSet ऑपरेटर का उपयोग करें कि सेट में कोई डुप्लिकेट आइटम नहीं जोड़े गए हैं। आइए पहले दस्तावेजों के साथ एक संग्रह बनाएं -
> db.getDistinctDemo.insertOne({"Values":[100,200]}); { "acknowledged" : true, "insertedId" : ObjectId("5cef69f9ef71edecf6a1f69d") } > db.getDistinctDemo.insertOne({"Values":[300,100]}); { "acknowledged" : true, "insertedId" : ObjectId("5cef6a07ef71edecf6a1f69e") }
संग्रह से सभी दस्तावेज़ों को खोजने () विधि की सहायता से प्रदर्शित करें -
> db.getDistinctDemo.find().pretty();
यह निम्नलिखित आउटपुट उत्पन्न करेगा -
{ "_id" : ObjectId("5cef69f9ef71edecf6a1f69d"), "Values" : [ 100, 200 ] } { "_id" : ObjectId("5cef6a07ef71edecf6a1f69e"), "Values" : [ 300, 100 ] }
MongoDB में सरणी फ़ील्ड के अलग-अलग स्तर प्राप्त करने के लिए क्वेरी निम्नलिखित है -
> db.getDistinctDemo.aggregate([ { "$group": { "_id": 0, "MyValues": { "$addToSet": "$Values" } } } ]);
यह निम्नलिखित आउटपुट उत्पन्न करेगा -
{ "_id" : 0, "MyValues" : [ [ 300, 100 ], [ 100, 200 ] ] }