MongoDB #11
اندازه‌ی قلم متن
تخمین مدت زمان مطالعه‌ی مطلب: دو دقیقه

بازگشت رکوردهایی محدود در MongoDB

متد ()limit
برای محدود کردن تعداد رکوردهای بازگشتی در MongoDB باید از متد ()limit استفاده کنید. متد () limit یک پارامتر عددی دارد که نشانگر تعداد سندهایی است که می‌خواهید نمایش دهید.

گرامر
گرامر پایه متد ()limit به شکل زیر است:
>db.COLLECTION_NAME.find().limit(NUMBER)

مثال
مجموعه mycol را با داده‌های زیر، ملاحظه کنید:
{ "_id" : ObjectId(5983548781331adf45ec5), "title":"MongoDB Overview"}
{ "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"}
{ "_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Point Overview"}
مثال زیر فقط 2 سند را هنگام اجرای کوئری نمایش می‌دهد:
>db.mycol.find({},{"title":1,_id:0}).limit(2)
{"title":"MongoDB Overview"}
{"title":"NoSQL Overview"}
>
اگر پارامتر عددی را وارد نکنید، متد ()limit همه‌ی اسناد مجموعه را نمایش می‌دهد.

متد ()skip
بجز متد ()limit، یک متد دیگر نیز به نام () skip وجود دارد که آن نیز یک پارامتر عددی داشته و برای صرفنظر کردن از تعدادی سند استفاده می‌شود.

گرامر
گرامر پایه متد () skip به شکل زیر است:
>db.COLLECTION_NAME.find().limit(NUMBER).skip(NUMBER)
مثال
مثال زیر فقط دومین سند را نمایش می‌دهد:
>db.mycol.find({},{"title":1,_id:0}).limit(1).skip(1)
{"title":"NoSQL Overview"}
>
توجه کنید که مقدار پیش فرض در متد ()skip برابر صفر است.


مرتب سازی اسناد در MongoDB

متد ()sort
برای مرتب سازی اسناد در MongoDB باید از متد ()sort استفاده کنید. متد ()sort یک سند را به همراه لیستی از اسامی فیلدها و با ترتیب مرتب سازی‌شان دریافت می‌کند. برای تعیین مرتب سازی از عدد 1 و 1- استفاده می‌شود. عدد 1 برای مرتب سازی صعودی و عدد 1- برای مرتب سازی نزولی استفاده می‌شود.

گرامر
گرامر پایه برای متد ()sort به شکل زیر است:
>db.COLLECTION_NAME.find().sort({KEY:1})

مثال
مجموعه mycol را با داده‌های زیر، ملاحظه کنید:
{ "_id" : ObjectId(5983548781331adf45ec5), "title":"MongoDB Overview"}
{ "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"}
{ "_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Point Overview"}
مثال زیر داده‌های مرتب شده را بصورت نزولی بر اساس عنوان آن‌ها، نمایش می‌دهد:
>db.mycol.find({},{"title":1,_id:0}).sort({"title":-1})
{"title":"Tutorials Point Overview"}
{"title":"NoSQL Overview"}
{"title":"MongoDB Overview"}
>
اگر نمی‌خواهید اولویت مرتب سازی را مشخص کنید، متد ()sort اسناد را بصورت صعودی مرتب می‌کند.