$not (النفي المنطقي)

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

$not (النفي المنطقي)

ينفي $not تعبير عامل، فيرجع المستندات التي تفشل في الشرط الداخلي. فالعبارة `{ price: { $not: { $gt: 50 } } }` تطابق المنتجات التي سعرها 50 على الأكثر. لا يطابق $not المستندات التي يكون الحقل فيها مفقودًا، ويتطلب تعبير عامل بداخله — وليس حرفية تعبير نمطي.

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

📝 الصيغة

{ <field>: { $not: { <operator expression> } } }

⚙️ المعلمات

حقلحقل المستند المراد مطابقته.
تعبير مشغّلشرط المعامل المراد نفيه، مثل { $gt: 50 }.

القيمة المرجعة:مؤشر المستندات المطابقة

▶ مثال

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

// $not: السعر ليس أكبر من 50
db.products.find({ price: { $not: { $gt: 50 } } })

// المكافئ: $lte أكثر مباشرة
db.products.find({ price: { $lte: 50 } })

المخرجات:

// يُرجع المنتجات بسعر 50 على الأكثر؛ تُستبعد المستندات ذات الحقل المفقود

📌 ملاحظات

📚 دروس ذات صلة

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

Qما الفرق بين $not و $ne؟
A$ne يعني "لا يساوي قيمة"؛ بينما ينفي $not تعبير عامل كامل، مثل { $not: { $gt: 50 } }.
Qهل يطابق $not المستندات التي يكون الحقل فيها مفقودًا؟
Aلا. الحقل المفقود يفشل في الشرط الداخلي، لذا لا يطابق النفي أيضًا.
Qهل يمكن لـ $not نفي تعبير نمطي؟
Aنعم، عبر { $not: { $regex: '...' } }، ولكن ليس بالصيغة { $not: /pattern/ }.
Web-Tutorial.com

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

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

100%