Python MongoDB - zapytanie
Podczas pobierania za pomocą find()możesz filtrować dokumenty za pomocą obiektu zapytania. Możesz przekazać zapytanie określające warunek wymaganych dokumentów jako parametr do tej metody.
Operatorzy
Poniżej znajduje się lista operatorów używanych w zapytaniach w MongoDB.
Operacja | Składnia | Przykład |
---|---|---|
Równość | {"kluczowa wartość"} | db.mycol.find ({"by": "punkt samouczka"}) |
Mniej niż | {"klucz": {$ lt: "wartość"}} | db.mycol.find ({"lubi": {$ lt: 50}}) |
Mniej niż równa się | {"klucz": {$ lte: "wartość"}} | db.mycol.find ({"lubi": {$ lte: 50}}) |
Lepszy niż | {"klucz": {$ gt: "wartość"}} | db.mycol.find ({"lubi": {$ gt: 50}}) |
Większe niż równe | {"klucz" {$ gte: "wartość"}} | db.mycol.find ({"lubi": {$ gte: 50}}) |
Nie równa się | {"klucz": {$ ne: "wartość"}} | db.mycol.find ({"lubi": {$ ne: 50}}) |
Przykład 1
Poniższy przykład pobiera dokument w kolekcji o nazwie sarmista.
from pymongo import MongoClient
#Creating a pymongo client
client = MongoClient('localhost', 27017)
#Getting the database instance
db = client['sdsegf']
#Creating a collection
coll = db['example']
#Inserting document into a collection
data = [
{"_id": "1001", "name": "Ram", "age": "26", "city": "Hyderabad"},
{"_id": "1002", "name": "Rahim", "age": "27", "city": "Bangalore"},
{"_id": "1003", "name": "Robert", "age": "28", "city": "Mumbai"},
{"_id": "1004", "name": "Romeo", "age": "25", "city": "Pune"},
{"_id": "1005", "name": "Sarmista", "age": "23", "city": "Delhi"},
{"_id": "1006", "name": "Rasajna", "age": "26", "city": "Chennai"}
]
res = coll.insert_many(data)
print("Data inserted ......")
#Retrieving data
print("Documents in the collection: ")
for doc1 in coll.find({"name":"Sarmista"}):
print(doc1)
Wynik
Data inserted ......
Documents in the collection:
{'_id': '1005', 'name': 'Sarmista', 'age': '23', 'city': 'Delhi'}
Przykład 2
Poniższy przykład pobiera dokument w kolekcji, której wartość wieku jest większa niż 26.
from pymongo import MongoClient
#Creating a pymongo client
client = MongoClient('localhost', 27017)
#Getting the database instance
db = client['ghhj']
#Creating a collection
coll = db['example']
#Inserting document into a collection
data = [
{"_id": "1001", "name": "Ram", "age": "26", "city": "Hyderabad"},
{"_id": "1002", "name": "Rahim", "age": "27", "city": "Bangalore"},
{"_id": "1003", "name": "Robert", "age": "28", "city": "Mumbai"},
{"_id": "1004", "name": "Romeo", "age": "25", "city": "Pune"},
{"_id": "1005", "name": "Sarmista", "age": "23", "city": "Delhi"},
{"_id": "1006", "name": "Rasajna", "age": "26", "city": "Chennai"}
]
res = coll.insert_many(data)
print("Data inserted ......")
#Retrieving data
print("Documents in the collection: ")
for doc in coll.find({"age":{"$gt":"26"}}):
print(doc)
Wynik
Data inserted ......
Documents in the collection:
{'_id': '1002', 'name': 'Rahim', 'age': '27', 'city': 'Bangalore'}
{'_id': '1003', 'name': 'Robert', 'age': '28', 'city': 'Mumbai'}