$divide (القسمة)

آخر تحديث: 2026-10-09

$divide (القسمة)

ينفذ $divide عملية القسمة في تعبيرات التجميع بوسيطتين: المقسوم والمقسوم عليه. يُستخدم غالبًا لحساب أسعار الوحدات أو القيم الفردية أو النسب المئوية، مثل قسمة نتيجتي $sum للحصول على نسبة. ومن الجدير بالذكر أن القسمة على صفر لا ترمي خطأً — بل تُرجع null، على خلاف معظم لغات البرمجة. وأي وسيطة فارغة أو مفقودة تُنتج null أيضًا. يقبل $divide الأعداد الصحيحة و double و Decimal، والنتيجة عادةً من نوع double.

الفئةالرياضيات
إصدار MongoDB1.0+
لغة المثالmongosh (الطرفية)

📝 الصيغة

{ $divide: [ <expression1>, <expression2> ] }

⚙️ المعلمات

المقسومقيمة رقمية أو تعبير يُحلّ إلى قيمة رقمية.
المقسوم عليهتعبير المقسوم عليه؛ المقسوم عليه صفر يجعل النتيجة null.

القيمة المرجعة:حاصل قسمة العددين؛ null عندما يكون المقسوم عليه صفرًا

▶ مثال

نفّذ الأوامر التالية في mongosh المحلي لديك (يتطلب تشغيل mongod):

// $divide: حساب متوسط السعر لكل عنصر
db.orders.aggregate([
  { $project: {
      avgPrice: { $divide: ['$total', '$quantity'] }
  } }
])

المخرجات:

{ '_id': 1, 'avgPrice': 25 }
{ '_id': 2, 'avgPrice': 9 }

📌 ملاحظات

مزيد من الحالات العملية قريبًا.

📚 دروس ذات صلة

❓ الأسئلة الشائعة

Qهل يرمي $divide خطأً عند القسمة على صفر؟
Aلا — يُرجع null؛ استخدم $ifNull عندما تحتاج قيمة افتراضية.
Qما النوع الذي تُرجعه قسمة الأعداد الصحيحة؟
Aالنتيجة من نوع double، لذا 5 مقسومة على 2 تعطي 2.5 بدلًا من الاقتطاع.
Qكيف أحصل على نسبة من نتيجتي $sum؟
Aمرّرهما مباشرة إلى $divide بعد حساب كلا المجموعين في $group، ثم اقسم في $project.
Web-Tutorial.com

فريق Web-Tutorial التقني

منصة دروس برمجية يديرها عدة مطورين. كل درس يتم كتابته ومراجعته بواسطة مطورين متخصصين في المجال. نعمل على ضمان دقة وموثوقية المحتوى — إذا لاحظت أي مشكلة، فيرجى إخبارنا.

100%