MongoDB एकत्रीकरण $max
. प्रदान करता है ऑपरेटर, लेकिन आपके मामले में आप "संपूर्ण" रिकॉर्ड चाहते हैं। तो यहाँ करने के लिए उपयुक्त चीज़ है $sort
और फिर $first
. का उपयोग करें $group
. के भीतर ऑपरेटर कथन:
db.collection.aggregate([
{ "$sort": { "session": 1, "age": -1 } },
{ "$group": {
"_id": "$session",
"age": { "$first": "$age" },
"firstName": { "$first" "$firstName" },
"lastName": { "$first": "$lastName" }
}}
])
तो "सॉर्टिंग" को ऑर्डर सही मिलता है, और "ग्रुपिंग" "ग्रुपिंग" कुंजी के भीतर पहली घटना को चुनता है जहां वे फ़ील्ड मौजूद होते हैं।
अधिकतर $first
यहाँ क्योंकि $sort
उल्टे क्रम में किया जाता है। आप $last
. का भी उपयोग कर सकते हैं जब आरोही क्रम में भी।