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
/ /
Consulta de comparación

$gte (operador de expresión)

$gte

$gte selecciona los documentos donde el valor del campo especificado es mayor o igual a (es decir, >=) un valor especificado (por ejemplo, value.)

Para la mayoría de los tipos de datos, los operadores de comparación solo realizan comparaciones en campos donde el tipo BSON coincide con el tipo de valor de la consulta. MongoDB admite la comparación limitada entre BSON a través de del encuadre de tipos.

Puedes usar $gte para implementaciones alojadas en los siguientes entornos:

  • MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube

  • MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB

  • MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.

El operador $gte tiene la siguiente forma:

{ field: { $gte: value } }

Los siguientes ejemplos utilizan la colección inventory. Crear la colección:

db.inventory.insertMany( [
{
item: "nuts", quantity: 30,
carrier: { name: "Shipit", fee: 3 }
},
{
item: "bolts", quantity: 50,
carrier: { name: "Shipit", fee: 4 }
},
{
item: "washers", quantity: 10,
carrier: { name: "Shipit", fee: 1 }
}
] )

Seleccione todos los documentos en la colección inventory donde quantity sea mayor o igual que 20:

db.inventory.find( { quantity: { $gte: 20 } } )

Ejemplo de salida:

{
_id: ObjectId("61bb51211b83c864e3bbe037"),
item: 'nuts',
quantity: 30,
carrier: { name: 'Shipit', fee: 3 }
},
{
_id: ObjectId("61bb51211b83c864e3bbe038"),
item: 'bolts',
quantity: 50,
carrier: { name: 'Shipit', fee: 4 }
}

El siguiente ejemplo establece el campo price en función de una comparación $gte con un campo en un documento incrustado.

db.inventory.updateMany(
{ "carrier.fee": { $gte: 2 } }, { $set: { "price": 9.99 } }
)

Ejemplo de salida:

{
_id: ObjectId("61bb51211b83c864e3bbe037"),
item: 'nuts',
quantity: 30,
carrier: { name: 'Shipit', fee: 3 },
price: 9.99
},
{
_id: ObjectId("61bb51211b83c864e3bbe038"),
item: 'bolts',
quantity: 50,
carrier: { name: 'Shipit', fee: 4 },
price: 9.99
}

Esta operación updateOne() realiza la búsqueda de un documento incrustado, carrier, con un subcampo llamado fee. Establece { price: 9.99 } en cada documento donde fee tiene un valor mayor o igual a 2.

Para establecer el valor del campo price únicamente en el primer documento donde carrier.fee sea mayor que 2, utilice updateOne().

Tip

Volver

$gt

En esta página