Docs Menu
Docs Home
/ /
Query Modifiers

$min

$min

Nota

Obsoleto desde v3.2

A partir de la versión3.2, el operador$minestá obsoleto enmongosh. Enmongosh, utilice cursor.min() en su lugar.

Especifique un valor $min para especificar el límite inferior inclusivo de un índice específico y así restringir los resultados find() de. El $min valor especifica el límite inferior para todas las claves de un índice específico en orden.

mongosh proporciona el método contenedor min():

db.collection.find( { <query> } ).min( { field1: <min value>, ... fieldN: <min valueN>} )

También puede especificar la opción con cualquiera de las dos formas:

db.collection.find( { <query> } )._addSpecial( "$min", { field1: <min value1>, ... fieldN: <min valueN> } )
db.collection.find( { $query: { <query> }, $min: { field1: <min value1>, ... fieldN: <min valueN> } } )

Nota

Uso del índice

A partir de MongoDB,4.2 debe especificar explícitamente el índice particular con el hint() método para min()ejecutar / con la siguiente excepción:$min find() no _id { _id: <value> }necesita indicar si la consulta es una condición de igualdad en el campo.

Dado que requiere un índice en un campo y obliga min() $gte a la consulta a utilizarlo, se recomienda usar el operador si es posible. Considere el siguiente ejemplo:

db.collection.find( { _id: { $in: [ 6, 7 ] } } ).min( { age: 25 } ).hint( { age: 1 } )

La consulta utilizará el índice del campo age, incluso si el índice en _id puede ser mejor.

Si utiliza $max con para especificar un $min rango,

  • Los límites de índice especificados en $min y deben referirse a las claves del mismo índice.$max

  • El límite especificado por debe ser mayor que el límite $max especificado $min por.

    Cambiado en la versión 4.0.

Los operadores $min y $max indican que el sistema debe evitar la planificación normal de consultas. En su lugar, construyen un escaneo de índice donde los límites del índice son especificados explícitamente por los valores dados en $min y $max.

Advertencia

Si no se especifica uno de los dos límites, el plan de consulta consistirá en un escaneo de índice sin límites en un lado. Esto puede reducir el rendimiento en comparación con una consulta que no contenga ningún operador o que utilice ambos para restringir con mayor precisión el escaneo de índice.

Los siguientes ejemplos utilizan mongosh envoltorios.

Considere las siguientes operaciones en una colección llamada collection que tiene un índice { age: 1 }:

db.collection.find().min( { age: 20 } ).hint( { age: 1 } )

Esta operación limita la consulta a aquellos documentos donde el campo age es al menos 20 y fuerza un plan de consulta que escanea el { age: 1 } índice desde 20 hasta MaxKey.

Puede utilizar $min junto con para limitar los resultados $max a un rango específico para el mismo índice, como en el siguiente ejemplo:

Nota

A partir de MongoDB,4.0 el límite especificado por debe ser mayor que el límite $max especificado $min por.

db.collection.find().min( { age: 20 } ).max( { age: 25 } ).hint( { age: 1 } )

Volver

$maxTimeMS

En esta página