Python Data Access 简明教程
Python MongoDB - Query
在使用 find() 方法检索时,您可以使用查询对象过滤文档。您可以将指定所需文档条件的查询作为参数传递给此方法。
Operators
以下是 MongoDB 中查询中使用的运算符列表。
Operation |
Syntax |
Example |
Equality |
{"key" : "value"} |
db.mycol.find({"by":"tutorials point"}) |
Less Than |
{"key" :{$lt:"value"}} |
db.mycol.find({"likes":{$lt:50}}) |
Less Than Equals |
{"key" :{$lte:"value"}} |
db.mycol.find({"likes":{$lte:50}}) |
Greater Than |
{"key" :{$gt:"value"}} |
db.mycol.find({"likes":{$gt:50}}) |
Greater Than Equals |
{"key" {$gte:"value"}} |
db.mycol.find({"likes":{$gte:50}}) |
Not Equals |
{"key":{$ne: "value"}} |
db.mycol.find({"likes":{$ne:50}}) |
Example1
以下示例检索名称为 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)
Output
Data inserted ......
Documents in the collection:
{'_id': '1005', 'name': 'Sarmista', 'age': '23', 'city': 'Delhi'}
Example2
以下示例检索 age 值大于 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)