آموزش روش های QuerySet در MongoEngine
![آموزش روش های QuerySet در MongoEngine](https://www.sourcebaran.com/learn/wp-content/uploads/2021/05/014-2.jpg)
آموزش روش های QuerySet در MongoEngine
در این درس از مجموعه آموزش برنامه نویسی سایت سورس باران، به آموزش روش های QuerySet در MongoEngine خواهیم پرداخت.
پیشنهاد ویژه : آموزش طراحی وب سایت با پایتون
شی QuerySet دارای روشهای مفید زیر برای پرس و جو در پایگاه داده است.
()first
اولین سندی که پرسش را برآورده می کند بازگردانده می شود کد زیر اولین سند در مجموعه محصولات را که قیمت آن <20000 است ، برمی گرداند.
1 2 3 |
qset=products.objects(price__lt=20000) doc=qset.first() print ('Name:',doc.Name, 'Price:',doc.price) |
خروجی
1 |
Name: Router Price: 2000 |
()exclude
این باعث می شود که فیلدهای ذکر شده از مجموعه پرس و جو حذف شوند. در اینجا ، از to_json () mehod کلاس Document برای بدست آوردن نسخه JSONified Document استفاده می شود. قسمت ProductID در نتیجه نشان داده نخواهد شد.
1 2 |
for product in products.objects.exclude('ProductID'): print (product.to_json()) |
خروجی
1 2 3 4 5 |
{"_id": {"$oid": "5c8dec275405c12e3402423c"}, "Name": "Laptop", "price": 25000} {"_id": {"$oid": "5c8dec275405c12e3402423d"}, "Name": "TV", "price": 50000} {"_id": {"$oid": "5c8dec275405c12e3402423e"}, "Name": "Router", "price": 2000} {"_id": {"$oid": "5c8dec275405c12e3402423f"}, "Name": "Scanner", "price": 5000} {"_id": {"$oid": "5c8dec275405c12e34024240"}, "Name": "Printer", "price": 12500} |
()fields
از این روش برای دستکاری زمینه های بارگیری در مجموعه درخواست استفاده کنید. از نام فیلدها به عنوان آرگومان های کلمه کلیدی استفاده کنید و 1 را در نظر بگیرید ، 0 را حذف کنید.
1 2 |
for product in products.objects.fields(ProductID=1,price=1): print (product.to_json()) |
خروجی
1 2 3 4 5 |
{"_id": {"$oid": "5c8dec275405c12e3402423c"}, "ProductID": 1, "price": 25000} {"_id": {"$oid": "5c8dec275405c12e3402423d"}, "ProductID": 2, "price": 50000} {"_id": {"$oid": "5c8dec275405c12e3402423e"}, "ProductID": 3, "price": 2000} {"_id": {"$oid": "5c8dec275405c12e3402423f"}, "ProductID": 4, "price": 5000} {"_id": {"$oid": "5c8dec275405c12e34024240"}, "ProductID": 5, "price": 12500} |
تنظیم آرگومان کلمه کلیدی فیلد بر روی 0 در ()fields روش مشابهی دارد که روش ()exclude را حذف می کند.
1 2 |
for product in products.objects.fields(price=0): print (product.to_json()) |
خروجی
1 2 3 4 5 |
{"_id": {"$oid": "5c8dec275405c12e3402423c"}, "ProductID": 1, "Name": "Laptop"} {"_id": {"$oid": "5c8dec275405c12e3402423d"}, "ProductID": 2, "Name": "TV"} {"_id": {"$oid": "5c8dec275405c12e3402423e"}, "ProductID": 3, "Name": "Router"} {"_id": {"$oid": "5c8dec275405c12e3402423f"}, "ProductID": 4, "Name": "Scanner"} {"_id": {"$oid": "5c8dec275405c12e34024240"}, "ProductID": 5, "Name": "Printer"} |
()only
تأثیر این روش مشابه روش ()fields است. فیلدهای مربوط به آرگومان های کلمه کلیدی فقط در مجموعه درخواست نمایش داده می شوند.
1 2 |
for product in products.objects.only('Name'): print (product.to_json()) |
خروجی
1 2 3 4 5 |
{"_id": {"$oid": "5c8dec275405c12e3402423c"}, "Name": "Laptop"} {"_id": {"$oid": "5c8dec275405c12e3402423d"}, "Name": "TV"} {"_id": {"$oid": "5c8dec275405c12e3402423e"}, "Name": "Router"} {"_id": {"$oid": "5c8dec275405c12e3402423f"}, "Name": "Scanner"} {"_id": {"$oid": "5c8dec275405c12e34024240"}, "Name": "Printer"} |
()sum
این روش مجموع فیلد داده شده را در مجموعه جستجو محاسبه می کند.
()average
این روش میانگین فیلد داده شده را در مجموعه درخواست محاسبه می کند.
1 2 3 4 |
avg=products.objects.average('price') ttl=products.objects.sum('price') print ('sum of price field',ttl) print ('average of price field',avg) |
خروجی
1 2 |
sum of price field 94500 average of price field 18900.0 |
لیست جلسات قبل آموزش MongoEngine
- آموزش MongoEngine
- آموزش MongoDB در MongoEngine
- آموزش قطب نما MongoDB در MongoEngine
- آموزش نگاشت کننده اسناد شی در MongoEngine
- آموزش نصب MongoEngine
- آموزش اتصال به پایگاه داده MongoDB در MongoEngine
- آموزش کلاس Document در MongoEngine
- آموزش طرح پویا در MongoEngine
- آموزش کلاس Field در MongoEngine
- آموزش افزودن / حذف سند در MongoEngine
- آموزش استعلام پایگاه داده در MongoEngine
- آموزش فیلترها در MongoEngine
- آموزش عملگرهای Query در MongoEngine
دیدگاه شما