आप जिस तत्व से अलग होना चाहते हैं, उसके आधार पर आप समूह के लिए एकत्रीकरण ढांचे का उपयोग कर सकते हैं (समूह इसे अलग बनाता है)। इसलिए यदि आप स्कोर को क्रमबद्ध करना चाहते हैं तो अलग-अलग कुंजी प्राप्त करें जो आप निम्न कार्य कर सकते हैं - स्कोर द्वारा क्रमबद्ध करें, कुंजी द्वारा समूह और तत्वों के सरणी के रूप में स्कोर जोड़ें (पहले से क्रमबद्ध):
db.test.aggregate([
{ $sort : { score : -1 } },
{ $group : {_id : "$key", scores : { $push : "$score" } } }
])
इसके परिणामस्वरूप अलग-अलग कुंजियों के साथ-साथ अंकों की एक सरणी होगी जो कि डुप्लिकेट कुंजियों वाले दस्तावेज़ों में निहित स्कोर हैं। मुझे यकीन नहीं है कि यह वही है जो आप खोज रहे हैं और मुझे पता है कि यह एक पुराना प्रश्न है, लेकिन मुझे लगा कि यह भविष्य में किसी और को इसे देखने में मदद कर सकता है - ऐसा करने के वैकल्पिक तरीके के रूप में।