$pull (إزالة العناصر المطابقة)

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

$pull (إزالة العناصر المطابقة)

يزيل $pull من مصفوفة كل عنصر يساوي قيمة أو يحقق شرطًا. فالعبارة `{ $pull: { tags: 'spam' } }` تزيل كل 'spam'؛ و`{ $pull: { scores: { $lt: 60 } } }` تزيل كل درجة أقل من 60. يزيل كل المطابقات، وليس واحدة فقط — الأداة القياسية لتنظيف المصفوفات.

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

📝 الصيغة

{ $pull: { <array field>: <value> | <condition> } }

⚙️ المعلمات

حقل مصفوفةحقل المصفوفة المراد تنظيفه.
قيمة أو شرطقيمة تساوٍ أو شرط استعلام، مثل ‏'spam' أو { $lt: 60 }.

القيمة المرجعة:نتيجة التحديث

▶ مثال

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

// $pull: إزالة كل وسوم spam
db.articles.updateOne(
  { _id: 1 },
  { $pull: { tags: 'spam' } }
)

// إزالة الدرجات الأقل من 60
db.students.updateOne(
  { _id: 1 },
  { $pull: { scores: { $lt: 60 } } }
)

المخرجات:

// تُزال كل وسوم spam وكل الدرجات الأقل من 60

📌 ملاحظات

📚 دروس ذات صلة

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

Qما الفرق بين $pull و $pop؟
Aيزيل $pull حسب القيمة أو الشرط في أي موضع؛ بينما يزيل $pop الأول أو الأخير فقط.
Qهل يمكن لـ $pull الإزالة حسب شرط؟
Aنعم، الشروط تدعم عوامل الاستعلام، مثل { $pull: { scores: { $lt: 60 } } }.
Qهل يزيل $pull كل المطابقات أم واحدة فقط؟
Aتُزال كل العناصر المطابقة.
Web-Tutorial.com

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

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

100%