MongoDB , la base de datos orientada a documentos de código abierto más popular, es una base de datos de tipo NoSQL. La base de datos NoSQL significa base de datos de consulta no estructurada. MongoDB almacena los datos en forma de estructura (par campo:valor) en lugar de forma tabular. Almacena datos en formato BSON (Binary JSON) al igual que el formato JSON.
Un ejemplo simple de una colección de base de datos MongoDB.
{
“_id”: Id. de objeto(“6009585d35cce6b7b8f087f1”),
“título”: “Matemáticas”,
“autor”: “Aditya”,
“nivel” : “básico”,
«longitud»: 230,
“ejemplo” : 11
}
¿Qué es la consulta de MongoDB?
MongoDB Query es una forma de obtener los datos de la base de datos MongoDB. Las consultas MongoDB brindan la simplicidad en el proceso de obtener datos de la base de datos, es similar a las consultas SQL en el lenguaje de base de datos SQL. Al realizar una operación de consulta, también se pueden usar criterios o condiciones que se pueden usar para recuperar datos específicos de la base de datos.
MongoDB proporciona los nombres de funciones como db.collection_name.find() para operar la operación de consulta en la base de datos. En esta publicación, discutimos esta función de muchas maneras utilizando diferentes métodos y operadores.
Aquí, estamos trabajando con:
Base de datos: geeksforgeeks
Colección: Artículo
Nota: Aquí se utiliza el método de consulta «pretty()» solo para mejorar la legibilidad de la base de datos de documentos. (No es necesario)
Selección de campo
El método find() muestra la colección de la base de datos en forma no estructurada ({<Clave>: <valor>}) incluida la <clave> ” id ” creada automáticamente por MongoDB y los datos de la colección insertados por el usuario o el administrador.
Sintaxis:
db.nombre_de_la_colección.find()
Ejemplo:
db.article.find()
Este método se utiliza para mostrar todos los documentos presentes en la colección de artículos.
Encontrar un solo documento
En MongoDB, podemos encontrar un solo documento usando el método findOne(). Este método devuelve el primer documento que coincide con la expresión de consulta de filtro dada.
Sintaxis:
db.nombre_de_la_colección.findOne()
Ejemplo:
db.article.findOne()
Aquí, vamos a mostrar el primer documento de la colección de artículos.
Visualización de documentos de forma formateada
En MongoDB, podemos mostrar documentos de la colección especificada con un buen formato utilizando el método pretty().
Sintaxis:
db.nombre_de_la_colección.find().pretty()
Ejemplo:
db.article.find().pretty()
Aquí, vamos a mostrar los documentos de la colección de artículos con un buen formato utilizando el método pretty().
Consulta de filtro igual
El operador de igualdad ( $eq ) se usa para hacer coincidir los documentos donde el valor del campo es igual al valor especificado. En otras palabras, el operador $eq se usa para especificar la condición de igualdad.
Sintaxis:
db.nombre_de_la_colección.find({< clave > : {$eq : < valor >}})
Ejemplo:
db.article.find({author:{$eq:"devil"}}).pretty()
Aquí, vamos a mostrar los documentos que coinciden con la consulta de filtro (es decir, {autor: {$eq: «diablo»}}) de la colección de artículos.
Mayor que consulta de filtro
Para obtener los datos numéricos específicos usando condiciones como mayor que igual o menor que igual, use el operador $gte o $lte en el método find().
Sintaxis:
db.nombre_de_la_colección.find({< clave > : {$gte : < valor >}})
o
db.nombre_de_la_colección.find({< clave > : {$lte : < valor >}})
Ejemplo:
db.article.find({length:{$gte:510}}).pretty()
Aquí, estamos consultando para obtener datos documentados que tengan un valor de atributo de longitud superior a 510. Por lo tanto, pasamos una consulta de filtro que es {longitud: {$gte: 510}} en el método find().
Comprobar la consulta de filtro de existencia
El operador $exists muestra todos los documentos de colección si existen en una clave determinada.
Sintaxis:
db.nombre_de_la_colección.find({< clave > : {$existe : < booleano >}})
Ejemplo :
db.article.find({time:{$exists:"true"}}).pretty()
Aquí, vamos a buscar todos los documentos que tienen el atributo denominado hora pasando una consulta de filtro que es {hora: {$existe: “verdadero”}} en el método find().
Consulta de operador lógico
El operador $and viene bajo el tipo de operador lógico MongoDB que
Sintaxis:
db.nombre_colección.find({$and : [{< clave > : {$eq : < valor1 >}}, {< clave > : {$existe : < booleano >}}]})
Ejemplo:
db.article.find({$and:[{level:{$eq:"high"}},{level:{$exists : "true"}}]}).pretty()
En este ejemplo de consulta estamos usando un operador y dadas dos condiciones que se resaltan a continuación
- y operador: {$y: [primera condición, segunda condición]}
- primera condición (nivel == “alto”): { nivel: {$eq: “alto”}}
- segunda condición: {nivel: {$existe: «verdadero»}}
Consulta de proyecto
Esta consulta devolvió el resultado que especificamos en el parámetro usando 1 y 0
- 1: Indica devolver el resultado
- 0: Indica no devolver el resultado
Estos parámetros se llaman Parámetro de Proyección .
Sintaxis:
base de datos nombre_de_la_colección. find({< clave > : < valor >}, {<clave> : < Parámetro_Proyección >})
Ejemplo:
db. article. find({author : "devil"},{title : 0}).pretty()
Este ejemplo de consulta solicita los datos que tienen al autor como «diablo» pero en el registro no quieren mostrar el atributo de título especificándolo como parámetro de proyección 0
- Consulta para encontrar un registro que tenga el atributo dado: { autor : “diablo”}
- Parámetro de proyección: {título: 0}
Consulta de límite
Este método de consulta especifica un número máximo de documentos para devolver un cursor.
Sintaxis:
db.nombre_de_la_colección.find({<clave>: <valor>}).limit(<valor_entero>)
Ejemplo:
base de datos artículo. find ({autor: «diablo»}). límite(2) . bonita()
Este método de consulta es simplemente la extensión del método de búsqueda que solo proporciona un resultado en un número limitado máximo (aquí hay 2)
- Consulta para encontrar un registro que tenga un atributo dado: find({author : “devil” })
- Consulta para limitar el resultado: limit( 2)
Salida :
ordenar los campos
En MongoDB, devuelve el resultado del hallazgo en orden ordenado que puede ser ascendente o descendente. La orden especifica por parámetro dado como
- 1 (Positivo Uno): Indica el orden Ascendente de tener valor de atributo en el registro.
- -1 (Uno Negativo): Indica el orden Descendente de tener valor de atributo en el registro.
Sintaxis:
db.nombre_de_la_colección.find(). ordenar ({< clave >: 1})
Ejemplo :
db.article.find({author : "devil"}).sort({example : 1}).pretty()
Este ejemplo mostrará el registro resultante que tiene el atributo de ejemplo y se mostrará en orden ascendente porque aquí estamos pasando el valor 1.
- Consulta para encontrar un registro que tenga un atributo dado: buscar ({autor: «diablo»})
- Consulta para ordenar el parámetro: ordenar ({ejemplo: 1})
Publicación traducida automáticamente
Artículo escrito por aditya32123 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA