MongoDB es un programa de base de datos multiplataforma orientado a documentos y no relacional (es decir, NoSQL). Es una base de datos de documentos de código abierto que almacena los datos en forma de pares clave-valor.
¿Qué es una consulta MongoDB?
La consulta de MongoDB se utiliza para especificar el filtro de selección mediante operadores de consulta mientras se recuperan los datos de la colección mediante el método db.find(). Podemos filtrar fácilmente los documentos utilizando el objeto de consulta. Para aplicar el filtro en la colección, podemos pasar la consulta especificando la condición de los documentos requeridos como parámetro para este método, que es un parámetro opcional para el método db.find(). Selectores de consultas: a continuación se muestra la lista de algunos operadores utilizados en las consultas en MongoDB.
.math-table { borde-colapso: colapsar; ancho: 100%; } .math-table td { borde: 1px sólido #5fb962; alineación de texto: izquierda! importante; relleno: 8px; } .math-table th { borde: 1px sólido #5fb962; relleno: 8px; } .math-table tr>th{ color de fondo: #c6ebd9; alineación vertical: medio; } .math-table tr:nth-child(odd) { background-color: #ffffff; }
Operación | Sintaxis | Descripción |
---|---|---|
Igualdad | {«valor clave»} | Coincide con valores que son iguales a un valor especificado. |
Menos que | {“clave”:{$lt:”valor”}} | Coincide con valores que son menores que un valor especificado. |
Mas grande que | {“clave”:{$gt:”valor”}} | Coincide con valores que son mayores que un valor especificado. |
Menos que igual a | {“clave”:{$lte:”valor”}} | Coincide con valores que son menores o iguales a un valor especificado. |
mayor que igual a | {“clave”:{$lte:”valor”}} | Coincide con valores que son mayores o iguales a un valor especificado. |
No igual a | {“clave”:{$ne: “valor”}} | Coincide con todos los valores que no son iguales a un valor especificado. |
Y lógico | { “$y”:[{exp1}, {exp2}, …, {expN}] } | Une las cláusulas de consulta con un AND lógico y devuelve todos los documentos que coinciden con las condiciones de ambas cláusulas. |
O lógico | { “$o”:[{exp1}, {<exp2}, …, {expN}] } | Une cláusulas de consulta con un OR lógico devuelve todos los documentos que coinciden con las condiciones de cualquiera de las cláusulas. |
NO lógico | { “$no”:[{exp1}, {exp2}, …, {expN}] } | Invierte el efecto de una expresión de consulta y devuelve documentos que no coinciden con la expresión de consulta. |
La Base de Datos o Colección sobre la que operamos: Ejemplo 1:
Python3
# importing Mongoclient from pymongo from pymongo import MongoClient # Making Connection myclient = MongoClient("mongodb://localhost:27017/") # database db = myclient["mydatabase"] # Created or Switched to collection # names: GeeksForGeeks Collection = db["GeeksForGeeks"] # Filtering the Quantities greater # than 40 using query. cursor = Collection.find({"Quantity":{"$gt":40}}) # Printing the filtered data. print("The data having Quantity greater than 40 is:") for record in cursor: print(record) # Filtering the Quantities less # than 40 using query. cursor = Collection.find({"Quantity":{"$lt":40}}) # Printing the filtered data. print("\nThe data having Quantity less than 40 is:") for record in cursor: print(record)
Salida: Ejemplo 2:
Python3
# importing Mongoclient from pymongo from pymongo import MongoClient # Making Connection myclient = MongoClient("mongodb://localhost:27017/") # database db = myclient["mydatabase"] # Created or Switched to collection # names: GeeksForGeeks Collection = db["GeeksForGeeks"] # Filtering the (Quantities greater than # 40 AND greater than 40) using AND query. cursor = Collection.find({"$and":[{"Quantity":{"$gt":40}}, {"Quantity":{"$gt":50}}]}) # Printing the filtered data. print("Quantities greater than 40 AND\ Quantities greater than 40 :") for record in cursor: print(record) # Filtering the (Quantities greater than # 40 OR greater than 40) using OR query. cursor = Collection.find({"$or":[{"Quantity":{"$gt":40}}, {"Quantity":{"$gt":50}}]}) # Printing the filtered data. print() print("Quantities greater than 40 OR\ Quantities greater than 40 :") for record in cursor: print(record)
Producción:
Publicación traducida automáticamente
Artículo escrito por VishwashVishwakarma y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA