Los operadores de consulta en MongoDB incluyen operadores de comparación, lógicos y de evaluación.
Operadores de Comparación
Los operadores de comparación se utilizan para comparar valores en los documentos de una colección y seleccionar documentos que cumplan con ciertas condiciones. Algunos de los operadores de comparación más comunes en MongoDB son:
- $eq: Compara si un campo es igual a un valor específico.
- $ne: Compara si un campo no es igual a un valor específico.
- $gt: Compara si un campo es mayor que un valor específico.
- $lt: Compara si un campo es menor que un valor específico.
- $gte: Compara si un campo es mayor o igual a un valor específico.
- $lte: Compara si un campo es menor o igual a un valor específico.
Ejemplo de uso de operadores de comparación:
// Encuentra documentos donde el campo "edad" es igual a 30 db.tu_coleccion.find({ edad: { $eq: 30 } }); // Encuentra documentos donde el campo "puntuacion" es mayor que 80 db.tu_coleccion.find({ puntuacion: { $gt: 80 } }); // Encuentra documentos donde el campo "nombre" no es igual a "Juan" db.tu_coleccion.find({ nombre: { $ne: "Juan" } });
Operadores Lógicos
Los operadores lógicos se utilizan para combinar múltiples condiciones en una sola consulta. Algunos de los operadores lógicos en MongoDB son:
- $and: Realiza una operación lógica "y" en una lista de expresiones.
- $or: Realiza una operación lógica "o" en una lista de expresiones.
- $not: Niega una expresión.
- $nor: Realiza una operación lógica "ni" en una lista de expresiones.
Ejemplo de uso de operadores lógicos
db.tu_coleccion.find({ $and: [ { edad: { $gt: 30 } }, { nombre: { $ne: "Juan" } } ] });
Operadores de Evaluación:
Los operadores de evaluación se utilizan para realizar operaciones de evaluación en los valores de los campos. Algunos de los operadores de evaluación en MongoDB son:
- $type: Comprueba el tipo de un campo.
- $exists: Comprueba si un campo existe en un documento.
- $mod: Comprueba si un campo es divisible por un valor dado.
- $regex: Realiza una búsqueda de expresión regular en un campo.
Ejemplo de uso de operadores de evaluación
// Encuentra documentos donde el campo "nombre" existe db.tu_coleccion.find({ nombre: { $exists: true } }); // Encuentra documentos donde el campo "edad" es de tipo número (Double) db.tu_coleccion.find({ edad: { $type: "number" } }); // Encuentra documentos donde el campo "correo" coincide con una expresión regular db.tu_coleccion.find({ correo: { $regex: /@example\.com$/i } });
Estos son algunos ejemplos de cómo utilizar operadores de consulta en MongoDB. Puedes combinar estos operadores para crear consultas más complejas y obtener los datos que necesitas de tu base de datos MongoDB. A medida que te familiarices con estos operadores, podrás realizar consultas más avanzadas y eficientes.