limit() (تحديد عدد النتائج)
آخر تحديث: 2026-10-09
limit() (تحديد عدد النتائج)
تحدّ limit() عدد المستندات التي تُعيدها find(): `db.users.find({ age: { $gt: 20 } }).limit(5)`. تتسلسل على المؤشر وهي الأداة القياسية للترقيم الصفحي واستعلامات الأعلى-N. limit(0) تعني بلا حد؛ ويمكن دمجها بحرية مع طرق مؤشر أخرى، مثل skip() للتصفح.
| الفئة | المؤشر |
|---|---|
| إصدار MongoDB | 1.0+ |
| لغة المثال | mongosh (الطرفية) |
📝 الصيغة
db.<collection>.find(<filter>).limit(<count>)
⚙️ المعلمات
| عدد | الحد الأقصى للمستندات المُرجَعة؛ 0 يعني بلا حد. |
|---|
القيمة المرجعة:المؤشر بعد تطبيق الحد (قابل للتسلسل).
▶ مثال
نفّذ الأوامر التالية في mongosh المحلي لديك (يتطلب تشغيل mongod):
// limit: أخذ أول 3 بالغين فقط
const top3 = db.users.find({ age: { $gte: 18 } }).limit(3).toArray()
top3
المخرجات:
[
{ _id: ObjectId('64c8a1b20000000000000001'), name: 'Alice', age: 21 },
{ _id: ObjectId('64c8a1b20000000000000002'), name: 'Bob', age: 25 }
]
📌 ملاحظات
- limit() تقتطع على الخادم؛ مقترنة بـ skip() ليست ترقيمًا متسقًا عالميًا
- limit(0) تعني بلا حد
- اقرنها بـ sort للتنبؤ، مثل .sort({age: 1}).limit(5)
🏷️ وسوم ذات صلة
💡 حالات ذات صلة
مزيد من الحالات العملية قريبًا.
📚 دروس ذات صلة
❓ الأسئلة الشائعة
Qكيف تتحد limit و skip للترقيم الصفحي؟
Aالنمط النمطي: .skip(pageSize*page).limit(pageSize)، مثل .skip(10).limit(10) للصفحة الثانية من عشر.
Qماذا تعني limit(0)؟
Alimit(0) لا تفرض أي حد، أي ما يعادل حذفها.
Qهل يمكنني تسلسل طرق مؤشر أخرى بعد limit؟
Aنعم — تُعيد limit() مؤشرًا، لذا يمكن أن تتبعها sort() و skip() و toArray() وغيرها.