Vous pouvez utiliser l'agrégation ci-dessous avec $sort
montant décroissant suivi de $first
opérateur pour projeter le montant maximum du document.
$replaceRoot
pour promouvoir le document du montant maximum au niveau supérieur.
collection.aggregate([
{$sort:{'amount':-1}},
{$group:{ _id: '$type',group:{$first:'$$ROOT'}}},
{$replaceRoot:{newRoot:"$group"}}
])