این فصل نحوه مرتب‌سازی نتایج پرس‌وجو در MongoDB را معرفی می‌کند، مشابه استفاده از دستور ORDER BY در MySQL. صفحه‌بندی در MongoDB از طریق تابع sort از کورسور Cursor به دست می‌آید.

آماده‌سازی داده‌های آزمایشی

درج چند رکورد در مجموعه restaurants

db.restaurants.insertMany( [
   { "_id" : 1, "name" : "کافه سانترال پارک", "borough" : "منهتن"},
   { "_id" : 2, "name" : "راک آ فلر بار و گریل", "borough" : "کوئینز"},
   { "_id" : 3, "name" : "پاب امپراتوری استیت", "borough" : "بروکلین"},
   { "_id" : 4, "name" : "پیتزاریا استن", "borough" : "منهتن"},
   { "_id" : 5, "name" : "دلی جین", "borough" : "بروکلین"},
] );

مرتب‌‌سازی نتایج

db.restaurants.find({}).sort({_id:1})

توضیحات:

  • از تابع sort برای تنظیم فیلد مرتب‌سازی استفاده کنید.
  • همه داده‌ها را جستجو کنید و براساس _id به صورت صعودی مرتب سازی کنید.

فرمت پارامترهای تابع مرتب‌سازی:

<فیلد>: 1 یا -1

توضیحات:

  • 1 نمایش ترتیب صعودی را دارد.
  • -1 نمایش ترتیب نزولی را دارد.

ترکیب با صفحه‌بندی

db.restaurants.find({}).limit(2).skip(2).sort({_id:-1})

توضیحات:

  • همه داده‌ها را جستجو کنید، حداکثر 2 رکورد را برگردانید، 2 رکورد را رد کنید و براساس _id به صورت نزولی مرتب کنید.