$add (الجمع)

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

$add (الجمع)

ينفذ $add عملية الجمع داخل تعبيرات التجميع. يجمع أرقامًا متعددة، أو يضيف عددًا من الميلي ثانية إلى تاريخ، أو يُرجع تاريخًا جديدًا من تاريخ زائد ميلي ثانية. يُستخدم غالبًا في مراحل $project أو $addFields أو $set لحساب الإجماليات مثل السعر زائد الضريبة. تُمرَّر الوسائط كمصفوفة تحتوي عنصرين على الأقل؛ إذا كانت أي وسيطة فارغة أو مفقودة، يُرجع التعبير كله null. لحساب الفرق بالميلي ثانية بين تاريخين استخدم $subtract بدلًا من ذلك.

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

📝 الصيغة

{ $add: [ <expression1>, <expression2>, ... ] }

⚙️ المعلمات

المعاملقيم رقمية أو تواريخ أو تعبيرات تُحلّ إليها؛ اثنان على الأقل.

القيمة المرجعة:مجموع الأعداد؛ التاريخ زائد المللي ثانية يُرجع تاريخًا

▶ مثال

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

// $add: حساب الإجمالي مع الضريبة
db.orders.aggregate([
  { $project: {
      total: { $add: ['$price', '$tax'] }
  } }
])

المخرجات:

{ '_id': 1, 'total': 110 }
{ '_id': 2, 'total': 55 }

📌 ملاحظات

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

📚 دروس ذات صلة

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

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

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

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

100%