MongoDB $ GT $ GTE $ LT $ LTE Operadores

MongoDB $ GT $ GTE $ LT $ LTE Operadores

MongoDB admite una variedad de operadores de consultas para buscar y filtrar documentos en una colección. Los operadores "GT", "GTE", "LT" y "LTE" se utilizan para realizar consultas de comparación en los campos. El operador "GT" (mayor que) devuelve documentos donde el campo especificado es mayor que el valor especificado, mientras que el "GTE" (mayor o igual a) el operador devuelve documentos donde el campo especificado es mayor o igual al valor especificado. Por otro lado, el operador "LT" (menos que) devuelve documentos donde el campo especificado es menor que el valor especificado y el "LTE" (menor o igual a) el operador devuelve documentos donde el campo especificado es menor o igual al valor especificado. Hay poca diferencia en todos estos operadores, pero el método de usarlos en MongoDB es bastante similar. Discutamos eso en esta guía.

Digamos que tiene todos los registros recién insertados de la colección "ficticia" en su base de datos utilizada actualmente, que es un total de 5 registros con campos únicos "_id", "ciudad" y "cuenta".

Prueba> DB.Ficticio.encontrar()
[
_id: ObjectId ("63C8A1F94FF07039AA6CDF6B"), CITY: 'Texas', Count: 5,
_id: ObjectId ("63C8A1F94FF07039AA6CDF6C"), CITY: 'Los Ángeles', Count: 2,
_id: ObjectId ("63C8A1F94FF07039AA6CDF6D"), Ciudad: 'Italia', Count: Null,
_id: ObjectId ("63C8A1F94FF07039AA6CDF6E"), CITY: 'ISTANBUL', CUENTA: 8,
_id: ObjectId ("63C8A1F94FF07039AA6CDF6F"), CITY: 'Delhi', Count: 7
]

Ejemplo # 01: $ GT Operator

El operador "GT" se utilizará para establecer o actualizar el valor de un campo particular en una colección para un solo registro. Para esto, debe ejecutar la función "updateOne" de MongoDB con el operador "GT" establecido para un campo específico. En nuestro caso, hemos aplicado la actualización solo a los registros con mayor que el valor "3" en su campo "Conde". El operador "Conjunto" se utiliza para agregar un nuevo campo "DESC" con el valor "Ciudad más grande del mundo" para todos esos registros que tienen un valor de "recuento" mayor que "3". Solo se ha actualizado 1 registro porque hemos probado la instrucción "updateOne".

Prueba> DB.Ficticio.UpdateOne ("Count": $ gt: 3, $ set: "desciP": "ciudad más grande del mundo")

Reconocido: verdadero,
Insertedid: NULL,
MatchedCount: 1,
ModifiedCount: 1,
UpsertedCount: 0

El primer registro de la colección "ficticia" se ha actualizado solo según el resultado de la ejecución de la función "encontrar". El campo "Desc" se agrega al registro con el nombre de la ciudad "Texas".

Prueba> DB.Ficticio.Find (Count: $ gt: 3)
[
_id: ObjectId ("63C8A1F94FF07039AA6CDF6B"), Ciudad: 'Texas', Count: 5, Desc: 'Ciudad más grande del mundo',
_id: ObjectId ("63C8A1F94FF07039AA6CDF6E"), CITY: 'ISTANBUL', CUENTA: 8,
_id: ObjectId ("63C8A1F94FF07039AA6CDF6F"), CITY: 'Delhi', Count: 7
]

Usemos la función updateMany () en lugar de updateOne () para actualizar todos los registros de la colección "ficticia" con los valores de campo "contar" mayores que "3". El siguiente comando se ha utilizado para este propósito y tenemos el reconocimiento.

Prueba> DB.Ficticio.UpdateMany (Count: $ gt: 3, $ set: "desc": "ciudad más grande del mundo")

Reconocido: verdadero,
Insertedid: NULL,
MatchedCount: 3,
ModifiedCount: 2,
UpsertedCount: 0

Ahora, después de ejecutar la instrucción de la función "Find", una vez más con el operador "GT", establecido en el campo "Conde" donde el valor es mayor que "3", tenemos la salida de Below Shows. Todos los 3 registros con un valor de "recuento" mayor que "3" ahora también tienen el campo "DESC".

Prueba> DB.Ficticio.Find (Count: $ gt: 3)
[
_id: ObjectId ("63C8A1F94FF07039AA6CDF6B"), Ciudad: 'Texas', Count: 5, Desc: 'Ciudad más grande del mundo',
_id: ObjectId ("63C8A1F94FF07039AA6CDF6E"), Ciudad: 'Istanbul', Count: 8, Desc: 'Ciudad más grande del mundo',
_id: ObjectId ("63C8A1F94FF07039AA6CDF6F"), Ciudad: 'Delhi', Count: 7, Desc: 'Ciudad más grande del mundo',
]

Ejemplo # 02: operador de $ GTE

En este ejemplo, discutiremos el uso del operador "GTE" de MongoDB: mayor o igual a. Se usará para buscar o actualizar los registros que son mayores o iguales a un valor particular. La función UpdateMany () se usa para actualizar muchos documentos en una colección MongoDB llamada "Dummy", donde el valor del campo "recuento" es mayor o igual a 4. El recuento es mayor que "4". El operador "SET" establecerá el valor del campo "Recuento" en 2 para todos los documentos coincidentes. La actualización se ha realizado muy bien.

Prueba> DB.Ficticio.UpdateMany (Count: $ gte: 4, $ set: "Count": 2)

Reconocido: verdadero,
Insertedid: NULL,
MatchedCount: 3,
ModifiedCount: 3,
UpsertedCount: 0

Después de mostrar los registros actualizados de la colección "Dummy" utilizando la función "Buscar", tenemos el resultado a continuación. Muestra que todos los registros ahora tienen el valor "2" en el campo "Conde", excepto el registro "3" donde el recuento ya es nulo y no cumple con la condición del operador "GTE" I.mi. Como se ilustra la consulta arriba.

Prueba> DB.Ficticio.encontrar()
[
_id: ObjectId ("63C8A1F94FF07039AA6CDF6B"), Ciudad: 'Texas', Count: 2, Desc: 'Ciudad más grande del mundo',
_id: ObjectId ("63C8A1F94FF07039AA6CDF6C"), CITY: 'Los Ángeles', Count: 2,
_id: ObjectId ("63C8A1F94FF07039AA6CDF6D"), Ciudad: 'Italia', Count: Null,
_id: ObjectId ("63C8A1F94FF07039AA6CDF6E"), Ciudad: 'Istanbul', Count: 2, Desc: 'Ciudad más grande del mundo',
_id: ObjectId ("63C8A1F94FF07039AA6CDF6F"), Ciudad: 'Delhi', Count: 2, Desc: 'Ciudad más grande del mundo'
]

Ejemplo # 03: operador de $ LT

Esta vez, vamos a utilizar el operador "LT" de MongoDB para actualizar los registros. El comando debajo de las actualizaciones de muchos documentos en MongoDB utilizando la función UpdateMany () una vez más, donde el valor del campo "recuento" es inferior a 4. El operador "Establecer" establece el valor del campo "Conde" en 3 y el valor del campo "Desc" a "Ciudad de tamaño mediano" para todos los documentos coincidentes. El reconocimiento muestra que se actualiza un total de 4 registros y el 1 que se deja sin cambios debe tener un valor "nulo" en su campo "Conde".

Prueba> DB.Ficticio.UpdateMany (Count: $ lt: 4, $ set: "Count": 3, "Desc": "Ciudad de tamaño mediano")

Reconocido: verdadero,
Insertedid: NULL,
MatchedCount: 4,
ModifiedCount: 4,
UpsertedCount: 0

Después de buscar los registros de la colección "ficticia" donde el campo de conteo tiene todos los valores inferiores a "4" a través del operador "LT", devuelve los 4 registros que tienen un campo que tienen "recuento" establecido en "3" y el campo "DESC "Establecido en" Ciudad de tamaño mediano "de la siguiente manera:

Prueba> DB.Ficticio.Find (Count: $ lt: 4)
[_id: ObjectId ("63C8A1F94FF07039AA6CDF6B"), Ciudad: 'Texas', Count: 3, Desc: 'Ciudad de tamaño mediano',
_id: ObjectId ("63C8A1F94FF07039AA6CDF6C"), Ciudad: 'Los Ángeles', Count: 3, Desc: 'Ciudad de tamaño mediano',
_id: ObjectId ("63C8A1F94FF07039AA6CDF6E"), Ciudad: 'Istanbul', Count: 3, Desc: 'Mid-Sized City', _id: ObjectId ("63C8A1F94FF07039AA6CDF6F"), Ciudad: ',', Conteo: 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3. DESC: 'Ciudad de tamaño mediano']

Ejemplo # 04: operador de $ LTE

A partir de la consulta adjunta a continuación, hemos probado la función "actualización" con su filtro Count: $ lte: null. Coincide con todos los documentos en los que el valor del campo "recuento" es menor o igual a nulo. En nuestro caso, solo hay un registro con un valor "nulo" en el campo "contar".En el segundo argumento, el operador "SET" establece el valor del campo "Conde" en 10 y el valor del campo "Desc" a "más bello y concurrido" para todos los documentos coincidentes. El siguiente comando actualiza un solo registro en una colección "ficticia", donde el valor del campo "recuento" es menor o igual a nulo.

Prueba> DB.Ficticio.updateMany (Count: $ lte: null, $ set: "Count": 10, "Desc": "MÁS BEJO Y COMPLEZADO")

Reconocido: verdadero,
Insertedid: NULL,
MatchedCount: 1,
ModifiedCount: 1,
UpsertedCount: 0

Cuando busca el registro con un valor de campo de "recuento" mayor que "8", devuelve un solo registro que tiene un valor "nulo" anteriormente.

Prueba> DB.Ficticio.Find (Count: $ gt: 8)
[_id: ObjectId ("63C8A1F94FF07039AA6CDF6D"), Ciudad: 'Italia', Conte: 10, Desc: 'Más hermoso y concurrido']

Conclusión

Este artículo cubre el detalle del propósito de usar los operadores GT, GTE, LT y LTE en MongoDB. El primer ejemplo cubre el operador "GT" y el segundo cubre el operador "GTE" con la ayuda de instrucciones de MongoDB. Mientras que las dos últimas ilustraciones cubren el uso de los operadores "LT" y "LTE" en detalle con la ayuda de la función UpdateMany () y el operador "Establecer".