Python – کوئری (MongoDB Query)
فیلتر کردن نتیجه
در زمان پیدا کردن اسناد در یک کلکسیون، میتوانید با استفاده از یک شیء کوئری، نتیجه را فیلتر کنید.
اولین آرگومان متد find()
یک شیء کوئری است و برای محدود کردن جستجو به کار میرود.
مثال
پیدا کردن سند(های) با آدرس “Park Lane 38”:
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
myquery = { "address": "Park Lane 38" }
mydoc = mycol.find(myquery)
for x in mydoc:
print(x)
کوئری پیشرفته
برای ساخت کوئریهای پیشرفته، میتوانید از تغییردهندهها به عنوان مقادیر در شیء کوئری استفاده کنید.
به عنوان مثال، برای پیدا کردن اسنادی که فیلد “address” با حرف “S” یا بالاتر (از نظر حروف الفبا) شروع میشود، از تغییردهنده بزرگتر از {"$gt": "S"}
استفاده کنید:
مثال
پیدا کردن اسنادی که آدرس آنها با حرف “S” یا بالاتر شروع میشود:
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
myquery = { "address": { "$gt": "S" } }
mydoc = mycol.find(myquery)
for x in mydoc:
print(x)
فیلتر کردن با عبارات منظم (Regular Expressions)
میتوانید از عبارات منظم نیز به عنوان یک تغییردهنده استفاده کنید.
عبارات منظم فقط برای جستجوی رشتهها قابل استفاده هستند.
برای پیدا کردن تنها اسنادی که فیلد “address” با حرف “S” شروع میشود، از عبارت منظم {"$regex": "^S"}
استفاده کنید:
مثال
پیدا کردن اسنادی که آدرس آنها با حرف “S” شروع میشود:
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
myquery = { "address": { "$regex": "^S" } }
mydoc = mycol.find(myquery)
for x in mydoc:
print(x)
برای ارسال نظر لطفا ابتدا وارد حساب کاربری خود شوید. صفحه ورود و ثبت نام