El operador $ne en MongoDB

Shihab Sikder 20 junio 2023
  1. el operador $ne en MongoDB
  2. Diferencia entre los operadores $not y $ne
El operador $ne en MongoDB

Este artículo discutirá cómo funciona el operador $ne en MongoDB. Además, enumeraremos sus diferencias con el operador $not.

el operador $ne en MongoDB

$ne es un operador en MongoDB, que significa no igual. Esto compara el valor de un campo y comprueba si es igual.

Sintaxis:

{field: {$ne: value}}

Suponga que tiene los siguientes documentos en la colección empleado.

> db.employee.find().pretty()
{"_id":1,   "name":"Alice", "salary": 1500, "gender":"Female"}
{"_id":2,   "name":"Bob",   "salary": 2500, "gender":"male"}
{"_id":3,   "name":"Jhon",  "salary": 3500, "gender":"male"}
{"_id":4,   "name":"Grace", "salary": 4500, "gender":"female"}

Ahora, quiere ver a todos los empleados masculinos. Entonces, su consulta debería ser como la siguiente:

> db.employee.find({gender:{$ne: female}}).pretty()
{"_id":2,   "name":"Bob",   "salary": 2500, "gender":"male"}
{"_id":3,   "name":"Jhon",  "salary": 3500, "gender":"male"}

Otro ejemplo, digamos, se le ha pedido que muestre a la mujer cuyo salario es mayor o igual a 4000. Entonces, la consulta debería ser:

> db.employee.find({gender:{$ne: male}, salary:{$gte:4000}}).pretty()
{"_id":4,   "name":"Grace", "salary": 4500, "gender":"female"}

Diferencia entre los operadores $not y $ne

Ha visto la sintaxis del operador $ne anterior. Si te diste cuenta, $ne solo toma valores como parámetro.

Simplemente verifica si un documento tiene el valor exacto en el campo dado o no. En algunos casos, podríamos necesitar una expresión lógica en lugar de un valor constante; entonces, usaremos $not.

Sintaxis:

{ field: { $not: { <operator-expression> } } }

Estas son las similitudes y diferencias entre $ne y $not:

$ne $not
Toma valores como parámetro. Toma la expresión lógica como parámetro.
No admite consultas anidadas en su interior. Puede usar una consulta anidada dentro del operador $not.
$ne selecciona los documentos donde el valor del campo no es igual al valor especificado, incluidos los documentos que no contienen el campo. $not selecciona los documentos que no coinciden con la expresión del operador, incluidos los documentos que no contienen el campo.
$ne no admite expresiones regulares. $not admite expresiones regulares.

Para saber más sobre $ne y $not, visita la documentación oficial adjunta.

Shihab Sikder avatar Shihab Sikder avatar

I'm Shihab Sikder, a professional Backend Developer with experience in problem-solving and content writing. Building secure, scalable, and reliable backend architecture is my motive. I'm working with two companies as a part-time backend engineer.

LinkedIn Website

Artículo relacionado - MongoDB Operator