Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
See how MongoDB 9.0 delivers up to 2x higher throughput.
MongoDB Branding Shape
Register now >
Docs Menu

$min (Función de ventana)

$min

Devuelve el valor mínimo de los documentos en una ventana determinada.

Nota

Desambiguación

Esta página describe $min cuando se utiliza como función de ventana.

También puedes usar $min en estos otros contextos:

{
$setWindowFields: {
...
output: {
<field>: {
$min: <expression>
}
}
}
}

Cuando $min compara valores de diferentes tipos, utiliza el orden de comparación BSON para determinar qué valor es menor.

Si algunos documentos en la ventana tienen un valor null para el campo o les falta el campo, $min los ignora. Solo considera los valores que no son nulos ni faltan.

Si todos los documentos de la ventana tienen un valor null para el campo o les falta el campo, $min devuelve null.

Los ejemplos de esta página utilizan datos del conjunto de datos sample_mflix. Para obtener más información sobre cómo cargar este conjunto de datos en su implementación autogestionada de MongoDB, consulte Cargar el conjunto de datos de ejemplo. Si realizó alguna modificación en las bases de datos de ejemplo, es posible que deba eliminarlas y volver a crearlas para ejecutar los ejemplos de esta página.

Este ejemplo utiliza $setWindowFields para agregar un campo a cada documento que contiene la calificación de IMDb de la película peor calificada estrenada en el mismo año:

db.movies.aggregate( [
{
$match: {
year: { $in: [ 1999, 2000, 2001 ] },
"imdb.rating": { $lte: 3.5 }
}
},
{
$setWindowFields: {
partitionBy: "$year",
sortBy: { title: 1 },
output: {
minimumRatingInYear: {
$min: "$imdb.rating",
window: {
documents: [ "unbounded", "unbounded" ]
}
},
rankInYear: {
$documentNumber: {}
}
}
}
},
{
$project: {
_id: 0,
title: 1,
year: 1,
imdb: { rating: "$imdb.rating" },
minimumRatingInYear: 1,
rankInYear: 1
}
},
{ $sort: { year: 1, title: 1 } }
] )

La tubería precedente:

  • Utiliza $match para filtrar películas de 1999, 2000 y 2001 con una calificación de IMDb de 3.0 o inferior.

  • Utiliza $setWindowFields para particionar las películas por year y ordenarlas por title. La etapa utiliza $min con una ventana de documentos de [ "unbounded", "unbounded" ] para crear minimumRatingInYear, que contiene el mínimo imdb.rating en toda la partición, y $documentNumber para asignar un número de fila por partición (rankInYear) a cada documento.

  • Utiliza $project para incluir title, year, imdb, minimumRatingInYear y rankInYear en la salida.

  • Utiliza $sort para ordenar los resultados por año y título.

Califique esta página