Puoi utilizzare l'aggregazione di seguito con $sort
importo decrescente seguito da $first
operatore per proiettare il documento di importo massimo.
$replaceRoot
per promuovere il documento di importo massimo al livello superiore.
collection.aggregate([
{$sort:{'amount':-1}},
{$group:{ _id: '$type',group:{$first:'$$ROOT'}}},
{$replaceRoot:{newRoot:"$group"}}
])