Python MongoDB Find
پیدا کردن یک سند
برای انتخاب داده از یک مجموعه در MongoDB میتوان از تابع شیء find_one()
استفاده کرد.
تابع شیء find_one()
اولین رخداد در انتخاب را برمیگرداند.
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
x = mycol.find_one()
print(x)
پیدا کردن همه
برای انتخاب داده از یک جدول در MongoDB میتوان از تابع شیء find()
استفاده کرد.
تابع شیپ find()
همه رخدادهای موجود در انتخاب را برمیگرداند.
اولین پارامتر تابع شیء find()
یک شیء کوئری است. در این مثال یک شیء کوئری خالی را استفاده کردهایم که همه سندهای موجود در مجموعه را انتخاب میکند.
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
for x in mycol.find():
print(x)
برگرداندن برخی از فیلدها
دومین پارامتر تابع شیء find()
شیء است که مشخص میکند کدام فیلدها در نتیجه شامل شوند.
این پارامتر اختیاری استو در صورتی که حذف شود، همه فیلدها برگردانده میشوند.
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
for x in mycol.find({},{ "_id": 0, "name": 1, "address": 1 }):
print(x)
اجازه ندارید که برای یک شیء هم مقدار صفر و هم مقدار یک را داشته باشید (مگر آنکه یکی از فیلدها، فیلد آیدی باشد). اگر مقدار یک فیلد را برابر صفر قرار دهید همه فیلدهای دیگر دارای مقدار یک خواهند بود و برعکس.
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
for x in mycol.find({},{ "address": 0 }):
print(x)
اگر در یک شیء هر دو مقدار صفر و یک را قرار دهید با خطا مواجه خواهید شد، مگر آنکه یکی از فیلدها آیدی باشد.
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
for x in mycol.find({},{ "name": 1, "address": 0 }):
print(x)