Możesz użyć poniższej agregacji z $sort
kwota malejąco, po której następuje $first
operatora do projektu dokumentu z maksymalną kwotą.
$replaceRoot
aby promować dokument z maksymalną kwotą do najwyższego poziomu.
collection.aggregate([
{$sort:{'amount':-1}},
{$group:{ _id: '$type',group:{$first:'$$ROOT'}}},
{$replaceRoot:{newRoot:"$group"}}
])