$inc (الزيادة)

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

$inc (الزيادة)

يقوم $inc بزيادة (أو إنقاص) حقل رقمي بمقدار محدد، وينشئ الحقل بالمقدار إذا لم يكن موجودًا. فالعبارة `{ $inc: { views: 1 } }` تضيف 1 إلى views؛ و`{ $inc: { stock: -5 } }` تطرح 5. وهو ذري ومثالي للعدادات وأعداد المشاهدات، ويتجنب سباقات القراءة-ثم-الكتابة.

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

📝 الصيغة

{ $inc: { <field>: <amount> } }

▶ مثال

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

// $inc: views +1، stock -5
db.articles.updateOne(
  { _id: 1 },
  { $inc: { views: 1 } }
)
db.products.updateOne(
  { _id: 2 },
  { $inc: { stock: -5 } }
)

المخرجات:

// عند غياب الحقل: يُنشأ views بقيمة 1؛ وينخفض stock بمقدار 5

📌 ملاحظات

📚 دروس ذات صلة

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

Qهل يمكن لـ $inc العمل على السلاسل؟
Aلا. يقبل $inc الأنواع الرقمية فقط؛ استخدامه على السلاسل يرمي خطأ. لدمج السلاسل استخدم $concat (في التجميع) أو القراءة-ثم-الكتابة.
Qماذا يحدث عندما يستهدف $inc حقلًا مفقودًا؟
Aإذا لم يكن الحقل موجودًا، يعامل $inc قيمته الأولية كصفر وينشئه بمقدار الزيادة. يجب أن يكون الحقل رقميًا وإلا يُرمى خطأ.
Qهل يمكن لـ $inc إنقاص قيمة؟
Aنعم، مرر مقدارًا سالبًا، مثل { $inc: { score: -5 } } الذي ينقص score بمقدار 5. $inc ذري ومثالي للعدادات ولوحات المتصدرين في ظل التزامن.
Web-Tutorial.com

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

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

100%