Python MongoDB - แบบสอบถาม
ขณะดึงข้อมูลโดยใช้ find()วิธีการคุณสามารถกรองเอกสารโดยใช้วัตถุแบบสอบถาม คุณสามารถส่งแบบสอบถามที่ระบุเงื่อนไขสำหรับเอกสารที่ต้องการเป็นพารามิเตอร์ไปยังวิธีนี้
ตัวดำเนินการ
ต่อไปนี้เป็นรายชื่อตัวดำเนินการที่ใช้ในการสืบค้นใน MongoDB
การดำเนินการ | ไวยากรณ์ | ตัวอย่าง |
---|---|---|
ความเท่าเทียมกัน | {"key": "value"} | db.mycol.find ({"by": "tutorials point"}) |
น้อยกว่า | {"คีย์": {$ lt: "value"}} | db.mycol.find ({"likes": {$ lt: 50}}) |
น้อยกว่าเท่ากับ | {"key": {$ lte: "value"}} | db.mycol.find ({"ชอบ": {$ lte: 50}}) |
มากกว่า | {"key": {$ gt: "value"}} | db.mycol.find ({"ชอบ": {$ gt: 50}}) |
มากกว่าที่เท่าเทียมกัน | {"คีย์" {$ gte: "value"}} | db.mycol.find ({"likes": {$ gte: 50}}) |
ไม่เท่ากับ | {"key": {$ ne: "value"}} | db.mycol.find ({"ชอบ": {$ ne: 50}}) |
ตัวอย่าง 1
ตัวอย่างต่อไปนี้ดึงเอกสารในคอลเลกชันที่มีชื่อ 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)
เอาต์พุต
Data inserted ......
Documents in the collection:
{'_id': '1005', 'name': 'Sarmista', 'age': '23', 'city': 'Delhi'}
ตัวอย่าง 2
ตัวอย่างต่อไปนี้ดึงเอกสารในคอลเล็กชันที่มีค่าอายุมากกว่า 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)
เอาต์พุต
Data inserted ......
Documents in the collection:
{'_id': '1002', 'name': 'Rahim', 'age': '27', 'city': 'Bangalore'}
{'_id': '1003', 'name': 'Robert', 'age': '28', 'city': 'Mumbai'}