مشغل NOT في SQL: أداة قوية لاستبعاد البيانات 🚫

مشغل NOT هو أحد المشغلات المنطقية الأساسية في SQL الذي يساعدك على عكس نتيجة الشرط. ببساطة، إذا كان الشرط صحيحاً، فإن NOT يجعله خاطئاً، والعكس صحيح. هذا المشغل مفيد جداً عندما تريد استبعاد بيانات معينة من نتائج الاستعلام.


🔍 ما هو مشغل NOT؟

مشغل NOT هو مشغل منطقي يستخدم لاستبعاد الصفوف التي تحقق شرطاً معيناً. يعمل على عكس قيمة الشرط، مما يسمح لك بالبحث عن كل شيء عدا ما تحدده في الشرط.

SELECT * FROM employees 
WHERE NOT department = 'Sales';

هذا الاستعلام سيعيد جميع الموظفين الذين ليسوا في قسم المبيعات.


💡 استخدام NOT مع WHERE

أكثر استخدام شائع لـ NOT هو مع جملة WHERE لاستبعاد الصفوف التي تحقق شرطاً محدداً.

SELECT product_name, price 
FROM products 
WHERE NOT price > 100;

هذا الاستعلام سيعيد جميع المنتجات التي سعرها ليس أكثر من 100.


🎯 استخدام NOT مع IN

يمكن دمج NOT مع مشغل IN لاستبعاد قيم متعددة في once.

SELECT * FROM customers 
WHERE country NOT IN ('USA', 'Canada', 'UK');

هذا الاستعلام سيعيد جميع العملاء الذين ليسوا من الولايات المتحدة أو كندا أو المملكة المتحدة.


🔤 استخدام NOT مع LIKE

NOT مع LIKE مفيد للبحث عن البيانات التي لا تطابق نمطاً معيناً.

SELECT * FROM products 
WHERE product_name NOT LIKE '%discount%';

هذا الاستعلام سيعيد جميع المنتجات التي لا تحتوي كلمة "discount" في اسمها.


📊 استخدام NOT مع BETWEEN

يمكن استخدام NOT مع BETWEEN لاستبعاد القيم ضمن نطاق محدد.

SELECT * FROM orders 
WHERE order_date NOT BETWEEN '2024-01-01' AND '2024-01-31';

هذا الاستعلام سيعيد جميع الطلبات التي لم تتم في شهر يناير 2024.


⚠️ أمثلة عملية إضافية

-- استبعاد قيم NULL
SELECT * FROM employees 
WHERE phone_number IS NOT NULL;

-- استبعاد معايير متعددة
SELECT * FROM students 
WHERE NOT (age < 18 OR grade = 'F');

🎓 نصائح مهمة عند استخدام NOT

  1. تأكد من فهمك للشرط الأساسي قبل إضافة NOT
  2. استخدم الأقواس لتجميع الشروط المعقدة
  3. اختبر استعلامك بدون NOT أولاً للتأكد من الفهم
  4. NOT يمكن أن يؤثر على أداء الاستعلام مع جداول كبيرة