MongoDB में मल्टीपल की (फील्ड) के कॉम्बिनेशन पर डिस्टिंक्ट ऑपरेशन करने के लिए एग्रीगेशन फ्रेमवर्क में $group का उपयोग करें।
उदाहरण से समझें
एक कलेक्शन बनाकर डॉक्यूमेंट इन्सर्ट करते हैं (कुछ डुप्लीकेट कॉम्बिनेशन के साथ):
> db.distinctWithMultipleKeysDemo.insertOne({"StudentName": "Mike", "StudentAge": 22, "StudentMathMarks": 56});
> db.distinctWithMultipleKeysDemo.insertOne({"StudentName": "Mike", "StudentAge": 22, "StudentMathMarks": 56});
> db.distinctWithMultipleKeysDemo.insertOne({"StudentName": "Bob", "StudentAge": 23, "StudentMathMarks": 45});
> db.distinctWithMultipleKeysDemo.insertOne({"StudentName": "Bob", "StudentAge": 23, "StudentMathMarks": 45});
> db.distinctWithMultipleKeysDemo.insertOne({"StudentName": "Carol", "StudentAge": 27, "StudentMathMarks": 54});
सभी डॉक्यूमेंट देखने के लिए:
> db.distinctWithMultipleKeysDemo.find().pretty();
आउटपुट:
अब
StudentNameऔरStudentAgeके कॉम्बिनेशन पर डिस्टिंक्ट करने के लिए:> var c = db.distinctWithMultipleKeysDemo; > var myResult = c.aggregate([ {$group: {_id: {StudentName: "$StudentName", StudentAge: "$StudentAge"}}} ]);आउटपुट:
$groupमें_idको डॉक्यूमेंट बनाकर मल्टीपल फील्ड पर ग्रुपिंग की जाती है। यहdistinct()से अधिक शक्तिशाली है जो केवल सिंगल फील्ड सपोर्ट करता है।