$eq (equal)
$ne (not equal)
Fundamentos de MongoDB
Uso de MongoDB: Consultas y Almacenamiento en NoSQL
Bases de Datos NoSQL: MongoDB y Tipos de Escalamiento
Documentos y colecciones en bases de datos documentales
Creación y gestión de bases de datos NoSQL con MongoDB y Atlas
Uso de Mongo Compass para Conectar y Consultar Bases de Datos
Consultas de MongoDB en Visual Studio Code con MongoDB for VS Code
Instalación de Docker en Windows, macOS y Ubuntu
Correr MongoDB en Docker: Configuración y Ejecución Local
Conexión a MongoDB usando Mongo SH y Docker
Diferencias entre JSON y BSON en MongoDB
CRUD
Operaciones CRUD e inserción de documentos en MongoDB
Operaciones CRUD en MongoDB: Insertar Documentos en Mongo Atlas
Actualización de Documentos en MongoDB con Operadores Básicos
Actualización en Masa de Documentos en MongoDB con UpdateMany
Actualización y manejo de arrays en MongoDB
Gestión de datos de sensores IoT en MongoDB: Insert y Update eficientes
Eliminar documentos en MongoDB: métodos y prácticas
Operadores
Consultas con Operadores de Comparación en MongoDB
Operadores de Comparación en MongoDB: Mayor, Menor e Igualdad
Operadores avanzados en MongoDB: consultas y actualizaciones eficientes
Búsquedas Avanzadas con Expresiones Regulares en MongoDB
Selección de Campos en Consultas MongoDB con Projections
Consultas Avanzadas en Arrays con MongoDB
Operadores Lógicos en MongoDB: Uso de AND, OR y NOR
Consultas avanzadas con el operador expresivo en MongoDB
Consultas Avanzadas en Arrays y Subdocumentos en MongoDB
Herramientas comunes al trabajar con MongoDB
Análisis de Datos con MongoDB Aggregation Framework
Ordenar y Limitar Consultas en MongoDB para Paginación
Características y usos avanzados de Mongo Atlas
MongoDB: Dominio de CRUD y Consultas Avanzadas
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
MongoDB es una poderosa herramienta para manejar bases de datos no relacionales. Entre sus características destacadas se encuentran los operadores de comparación que nos permiten realizar consultas más complejas y específicas. En este apartado, nos enfocaremos en los operadores equal
y not equal
, los cuales nos permitirán buscar datos que sean precisamente iguales o distintos a un valor especificado dentro de nuestros documentos.
equal
y cómo se utiliza?El operador equal
en MongoDB se emplea para buscar documentos en una colección que coincidan con un valor específico en un campo. Aunque este operador trae implícito el equal
en las consultas de MongoDB, también se puede usar de una manera explícita para mayor claridad.
Veamos un ejemplo básico:
// Consulta implícita
db.inventory.find({ quantity: 20 })
// Consulta explícita
db.inventory.find({ quantity: { $eq: 20 } })
En ambos casos, la consulta devolverá todos los productos que tengan en el campo quantity
un valor igual a 20. Usar el operador explícitamente, como $eq
, resulta útil para aclarar el tipo de consulta que se realiza, aunque no sea estrictamente necesario.
equal
?MongoDB nos permite realizar consultas en subdocumentos dentro de un documento principal. Para acceder a estos, los nombres de los campos deben especificarse de manera completa usando comillas dobles sin errores tipográficos.
Por ejemplo, dado un subdocumento con un campo name
dentro de item
, la consulta sería:
// Búsqueda en un subdocumento
db.inventory.find({ "item.name": "AB" })
Al ejecutar esta búsqueda, la consulta devolverá los documentos donde el subdocumento item
tenga un campo name
igual a "AB".
not equal
?A diferencia del operador equal
, el operador not equal
($ne
) busca la negación en el contexto del valor especificado. Esto significa que devolverá todos los documentos que no coincidan con el valor dado en el campo.
Aquí tienes un ejemplo:
// Consulta para obtener documentos con quantity distinto a 20
db.inventory.find({ quantity: { $ne: 20 } })
Al ejecutar esto, la consulta devolverá todos los documentos cuya cantidad no sea 20, permitiéndonos centrarnos en otros valores.
Los operadores de comparación pueden integrarse a las instrucciones de actualización como update
en MongoDB. Esto resulta muy útil cuando deseamos realizar cambios en los documentos que cumplan con ciertas condiciones.
Veamos un caso de uso práctico:
// Aumentar el campo quantity por 10 en documentos donde la quantity no es 20
db.inventory.updateMany(
{ quantity: { $ne: 20 } },
{ $inc: { quantity: 10 } }
)
Esta instrucción incrementará en 10 la cantidad de todos los productos cuyo quantity
no sea 20. MongoDB facilita realizar este tipo de operaciones complejas y potentes directamente sobre sus documentos.
Los operadores de comparación son solo el comienzo de lo que MongoDB ofrece. Anímate a investigar otros operadores que te permitirán explotar al máximo esta base de datos en tus proyectos. La continua práctica y aprendizaje te ayudarán a desenvolverte con mayor habilidad y precisión en este entorno.
Estos conceptos y técnicas te proporcionan las herramientas necesarias para gestionar tus datos de manera efectiva y competente. ¡Sigue aprendiendo y perfeccionando tus habilidades!
Aportes 11
Preguntas 1
$eq (equal)
$ne (not equal)
use("platzi_store")
// usando equal implicitamente
db.inventory.find({qty: 20})
// usando equal explicitamente
db.inventory.find({qty: {$eq: 20}})
// usando find en objetos anindados
//NOTA: siempre que esté la notación . (punto), la clave debe ir en "" (comnnillas)
db.inventory.find({"item.code": "123"})
// usando no equal, este se usa de forma explícita
db.inventory.find({qty: {$ne: 20}})
Y podemos utilizarlos para actualizar de forma selectiva ciertos documentos
use("platzi_store")
db.inventory.updateMany(
{qty: {$ne: 20}},
{
$inc: {
qty: 10
}
}
)
En VSCode puedes correr el archivo .mongodb utilizando es atajo: “Ctrl + Alt + r”
link al dataset
Acá podemos ver los operadores en la documentación oficial de MondoDB https://www.mongodb.com/docs/manual/reference/operator/query-comparison/#comparison-query-operators
El tema de la comilla doble " es importante tenerlo en consideración para evitar el error
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?