Docs Menu
Docs Home
/ /

$gt (operador de expresión)

$gt

$gt selecciona documentos donde el valor del campo es mayor que ()> el valor especificado.

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 del valor de la consulta. MongoDB admite comparaciones cruzadas BSON limitadas mediante el corchete de tipos.

Puedes usar $gt 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 tiene esta $gt forma:

{ field: { $gt: value } }

Para crear la colección inventory utilizada en los ejemplos, ejecute este comando:

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 }
}
] )

Este ejemplo selecciona documentos en la colección inventory donde quantity es mayor que 20:

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

Ejemplo de salida:

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

Este ejemplo establece el price campo en función de una comparación en un campo en un documento $gt incrustado:

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

Ejemplo de salida:

{
_id: ObjectId("61ba3ec9fe687fce2f042417"),
item: 'nuts',
quantity: 30,
carrier: { name: 'Shipit', fee: 3 },
price: 9.99
},
{
_id: ObjectId("61ba3ec9fe687fce2f042418"),
item: 'bolts',
quantity: 50,
carrier: { name: 'Shipit', fee: 4 }
},
{
_id: ObjectId("61ba3ec9fe687fce2f042419"),
item: 'washers',
quantity: 10,
carrier: { name: 'Shipit', fee: 1 }
}

La operación updateOne() coincide carrier con un documento incrustado llamado, con un subcampo fee llamado. La operación establece { price: 9.99 } en el primer documento donde fee es mayor 2 que.

Para establecer el price campo en todos los documentos donde carrier.fee es mayor 2 que,updateMany() utilice.

Volver

$eq

En esta página