आप num_sold
. पर समूह बनाकर ऐसा कर सकते हैं और फिर $sort
. का उपयोग करके और $limit
अधिकतम मूल्य वाले दस्तावेज़ प्राप्त करने के लिए पाइपलाइन चरण:
db.t.aggregate([
// Group by num_sold, assembling an array of docs with each distinct value.
{$group: {
_id: '$num_sold',
docs: {$push: '$$ROOT'}
}},
// Sort the groups by _id descending to put the max num_sold group first.
{$sort: {_id: -1}},
// Return just the first (max num_sold) group of docs.
{$limit: 1}
])
आउटपुट:
{
"_id" : 55.0,
"docs" : [
{
"_id" : ObjectId("5726a62879ce3350ff8d607e"),
"item" : "Orange",
"num_sold" : 55.0
},
{
"_id" : ObjectId("5726a62879ce3350ff8d607f"),
"item" : "Peach",
"num_sold" : 55.0
}
]
}