$count (العد)
آخر تحديث: 2026-10-09
$count (العد)
يُرجع $count مستندًا واحدًا بشكل { field: N } يحمل عدد المستندات المتبقية في خط الأنابيب. وهو اختصار لـ $group مع $sum: 1. موضوعًا بعد $match يعد النتائج المفلترة دون تجميع. المخرج مستند واحد تراه أي مرحلة لاحقة.
| الفئة | المراحل الأساسية |
|---|---|
| إصدار MongoDB | 1.0+ |
| لغة المثال | mongosh (الطرفية) |
📝 الصيغة
{ $count: "<outputFieldName>" }
⚙️ المعلمات
| اسم حقل الإخراج | اسم الحقل الذي يستقبل العدد. |
|---|
القيمة المرجعة:مستند واحد { count: N } (اسم الحقل من المعامل)
▶ مثال
نفّذ الأوامر التالية في mongosh المحلي لديك (يتطلب تشغيل mongod):
// $count: عدد الطلبات ذات الحالة A
db.orders.aggregate([
{ $match: { status: 'A' } },
{ $count: 'total' }
])
المخرجات:
// عدد الطلبات المطابقة
{ "total": 25 }
📌 ملاحظات
- يصدر $count مستندًا واحدًا؛ يتدفق واحد فقط إلى الأمام
- مكافئ لـ { $group: { _id: null, count: { $sum: 1 } } }
- يجب أن يكون اسم الحقل سلسلة عادية، وليس مسارًا ببادئة $
🏷️ وسوم ذات صلة
💡 حالات ذات صلة
مزيد من الحالات العملية قريبًا.
📚 دروس ذات صلة
❓ الأسئلة الشائعة
Qما الفرق بين $count و countDocuments؟
Aيعد countDocuments المجموعة مباشرة؛ بينما يحصي $count ما أنتجته المراحل السابقة من خط الأنابيب.
Qهل يمكن للتجميع المتابعة بعد $count؟
Aنعم. يصدر مستندًا واحدًا تتابع المراحل اللاحقة معالجته.
Qهل يمكن لـ $count إعادة تسمية حقل مخرجه؟
Aنعم، الوسيطة هي اسم الحقل، مثل { $count: 'total' } الذي يُخرج { total: N }.