Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /
Campos

$min

$min

El $min actualiza el valor del campo a un valor especificado si el valor especificado es menor que el valor actual del campo. El operador $min puede comparar valores de diferentes tipos, usando el Orden de comparación BSON.

{ $min: { <field1>: <value1>, ... } }

Para especificar un <field> en un documento incrustado o en un arreglo, utiliza notación de puntos.

A partir de MongoDB 5.0, los operadores de actualización procesan los campos de documentos con nombres basados en cadenas en orden lexicográfico. Los campos con nombres numéricos se procesan en orden numérico. Consulta Comportamiento del operador de actualización para obtener más información.

Si el campo no existe, el $min operador establece el campo al valor especificado.

Para comparaciones entre valores de diferentes tipos, como un número y un null, $min utiliza el orden de comparación BSON.

A partir de MongoDB 5.0, mongod ya no genera un error cuando utiliza un operador de actualización como $min con una expresión de operando vacía ( { } ). Una actualización vacía no produce cambios y no genera ninguna entrada en el oplog (lo que significa que la operación es una “no-op").

Crear la colección scores:

db.scores.insertOne( { _id: 1, highScore: 800, lowScore: 200 } )

El lowScore del documento actualmente tiene el valor 200. La siguiente operación usa $min para comparar 200 con el valor especificado 150 y actualizar el valor de lowScore a 150 ya que 150 es menor que 200:

db.scores.updateOne( { _id: 1 }, { $min: { lowScore: 150 } } )

La colección scores ahora contiene el siguiente documento modificado:

{ _id: 1, highScore: 800, lowScore: 150 }

La siguiente operación no tiene efecto ya que el valor actual del campo lowScore, o sea 150, es menor que 250:

db.scores.updateOne( { _id: 1 }, { $min: { lowScore: 250 } } )

El documento permanece sin cambios en la colección scores:

{ _id: 1, highScore: 800, lowScore: 150 }

Crear la colección tags:

db.tags.insertOne(
{
_id: 1,
desc: "crafts",
dateEntered: ISODate("2013-10-01T05:00:00Z"),
dateExpired: ISODate("2013-10-01T16:38:16Z")
}
)

La siguiente operación compara el valor actual del campo dateEntered, es decir ISODate("2013-10-01T05:00:00Z"), con la fecha especificada new Date("2013-09-25") para determinar si se debe actualizar el campo:

db.tags.updateOne(
{ _id: 1 },
{ $min: { dateEntered: new Date("2013-09-25") } }
)

La operación actualiza el campo dateEntered:

{
_id: 1,
desc: "crafts",
dateEntered: ISODate("2013-09-25T00:00:00Z"),
dateExpired: ISODate("2013-10-01T16:38:16Z")
}

Tip

Volver

$inc

En esta página