$unset (إزالة الحقول)

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

$unset (إزالة الحقول)

يزيل $unset الحقول المحددة من المستندات، مُبقيًا كل شيء آخر. وهو اختصار لـ { $project: { field: 0 } } ويمكنه إزالة عدة حقول دفعة واحدة، بما في ذلك المسارات المتداخلة عبر الترميز النقطي. مفيد لتنظيف الحقول الحساسة مثل كلمات المرور أو الرموز وإزالة الحقول الوسيطة.

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

📝 الصيغة

{ $unset: "<field>" } or { $unset: [ "<field1>", "<field2>" ] }

⚙️ المعلمات

حقلاسم حقل، أو مصفوفة أسماء حقول، المراد إزالتها.

القيمة المرجعة:تدفق مستندات مع إزالة الحقول المحددة

▶ مثال

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

// $unset: إزالة الحقول الحساسة ورقم بطاقة متداخل
db.users.aggregate([
  { $unset: ['password', 'token', 'detail.card'] }
])

المخرجات:

// المستندات لم تعد تحمل password أو token أو detail.card

📌 ملاحظات

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

📚 دروس ذات صلة

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

Qهل يمكن لـ $unset إزالة الحقول المضمنة؟
Aنعم، عبر مسارات نقطية مثل 'detail.card' لاستهداف حقل فرعي واحد.
Qكيف يختلف $unset عن حذف الحقول بـ $project؟
Aلا فرق حقيقي؛ $unset سكر نحوي لإسقاط الأصفار، وأنظف للعديد من الحقول.
Qماذا لو استهدف $unset حقلًا مفقودًا؟
Aلا خطأ؛ يمر المستند دون تغيير.
Web-Tutorial.com

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

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

100%