Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
$superior
Nuevo a partir de la versión 8.0.1.
Utilice el $top acumulador de la $group fase para obtener el documento mejor clasificado por grupo según un orden de clasificación especificado.
Parámetros
-
sortBy: un documento que especifica el orden de clasificación.1Utilícelo para ascender o-1descender. -
output: expresión que especifica los campos que se devolverán desde la parte superior del documento.
Ejemplo (MongoDB Shell)
En el siguiente ejemplo se muestra cómo usar el $top acumulador para encontrar la cantidad más vendida (cantidad más alta) por artículo de una colección de ventas.
Crea documentos de muestra
db.sales.insertMany([ { item: "abc", quantity: 10, price: 5 }, { item: "abc", quantity: 5, price: 8 }, { item: "xyz", quantity: 15, price: 3 }, { item: "xyz", quantity: 7, price: 6 } ])
Ejemplo de consulta
db.sales.aggregate([ { $group: { _id: "$item", topSale: { $top: { sortBy: { quantity: -1 }, output: { quantity: "$quantity", price: "$price" } } } } } ])
Salida
[
{ "_id": "xyz", "topSale": { "quantity": 15, "price": 3 } },
{ "_id": "abc", "topSale": { "quantity": 10, "price": 5 } }
]
Ejemplos de código
Para ver un ejemplo de código sobre el uso del $top operador, elige la pestaña del idioma que quieres usar: