$limit (الحد)
آخر تحديث: 2026-10-09
$limit (الحد)
يبتور $limit خط الأنابيب إلى أول N مستندات بالترتيب الحالي، مغيرًا العدد فقط لا المحتوى. مقترنًا بـ $sort ينفذ استعلامات أعلى-N. وضع $limit مبكرًا يقلص البيانات التي يجب أن تعالجها المراحل اللاحقة — تحسين شائع.
| الفئة | المراحل الأساسية |
|---|---|
| إصدار MongoDB | 1.0+ |
| لغة المثال | mongosh (الطرفية) |
📝 الصيغة
{ $limit: <positive integer> }
⚙️ المعلمات
| عدد | عدد المستندات المراد الإبقاء عليها؛ يجب أن يكون عددًا صحيحًا موجبًا. |
|---|
القيمة المرجعة:تدفق مستندات مقيَّد بأول N من المستندات
▶ مثال
نفّذ الأوامر التالية في mongosh المحلي لديك (يتطلب تشغيل mongod):
// $limit: أفضل 5 مقالات حسب المشاهدات
db.articles.aggregate([
{ $sort: { views: -1 } },
{ $limit: 5 }
])
المخرجات:
// المقالات الخمس الأكثر مشاهدة
📌 ملاحظات
- يُبقي $limit أول N مستندات بترتيب خط الأنابيب الحالي
- يجب أن تكون الوسيطة عددًا صحيحًا موجبًا؛ الصفر أو السالب يرمي خطأ
- رتب أولًا ثم حد، للحصول على أعلى-N حقيقي
🏷️ وسوم ذات صلة
💡 حالات ذات صلة
مقدمة إلى مسارات التجميع: طريقة `aggregate` والمرحلة الأساسية
تدفقات التغييرات: مراقبة التغييرات في الوقت الفعلي
$facet + $bucket + البحث النصي/الجغرافي المكاني
$lookup والارتباطات مع مجموعات متعددة
📚 دروس ذات صلة
❓ الأسئلة الشائعة
Qهل يمكن استخدام $limit و $skip معًا؟
Aنعم. يسقط $skip أول N مستندات ثم يبتور $limit — ترقيم بالإزاحة والحد.
Qهل من المفيد وضع $limit مبكرًا؟
Aنعم. كلما كان الابتور أبكر، قلّت البيانات التي تعالجها المراحل اللاحقة.
Qهل يمكن لـ $limit أخذ وسيطة متغيرة؟
Aلا، يجب أن تكون عددًا صحيحًا موجبًا حرفيًا؛ استخدم خط أنابيب فرعي $facet للعدد الديناميكي.