MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Dokument in jeder Gruppe mit maximalem Wert unter Verwendung von MongoDB zurückgeben

Sie können die folgende Aggregation mit $sort verwenden Betrag absteigend, gefolgt von $first Operator, um Dokument mit maximalem Betrag zu projizieren.

$replaceRoot um das Dokument mit dem maximalen Betrag auf die oberste Ebene zu befördern.

collection.aggregate([
 {$sort:{'amount':-1}}, 
 {$group:{ _id: '$type',group:{$first:'$$ROOT'}}},
 {$replaceRoot:{newRoot:"$group"}}
])