MongoDB distinct . के साथ सर्वर-साइड सॉर्टिंग का समर्थन नहीं करता है आज्ञा। कंसोल में जो हो रहा है वह यह है कि distinct('myKey') कॉल एक सरणी देता है और फिर आप जावास्क्रिप्ट को कॉल कर रहे हैं sort उस सरणी पर विधि जो सरणी का एक क्रमबद्ध संस्करण देता है। आपके द्वारा पास किए गए पैरामीटर sort अनदेखा किया जाता है।
जावा में समकक्ष करने के लिए आप यह करेंगे:
List myKeys = myCollection.distinct("myKey");
java.util.Collections.sort(myKeys);
सर्वर-साइड सॉर्ट का उपयोग करके अद्वितीय कुंजियाँ प्राप्त करने के लिए आप aggregate . का उपयोग कर सकते हैं . यहां बताया गया है कि आप इसे शेल में कैसे करेंगे:
db.mycollection.aggregate([
{ $group: {_id: '$myKey' }},
{ $sort: {_id: 1}}
])
हालांकि, जब मैंने इसका परीक्षण किया, तो साधारण क्लाइंट-साइड सॉर्ट दृष्टिकोण ने बेहतर प्रदर्शन किया।