شرح صفوف ومحتوى الفقرة
يعمل نفي الوجود عبر المعامل NOT EXISTS (subquery) على تصفية الجدول الخارجي للإبقاء فقط على السجلات التي لا تملك أي صف مطابق في الاستعلام الداخلي المترابط:
- تعبير مباشر عن عدم الارتباط: يعبّر
NOT EXISTSبوضوح عن قواعد العمل مثل «العملاء الذين لم يسجلوا أي طلب في 2026» أو «المنتجات التي لم تُسترجع أبداً». - دعم الشروط المركبة: يمكنك إضافة عدة شروط تصفية داخل جملة
WHEREالداخلية بجانب شرط الترابط الرئيسي.
SQL
-- Find active products that have never been ordered
SELECT
p.product_id,
p.sku_code,
p.product_title
FROM products AS p
WHERE p.is_active = 1
AND NOT EXISTS (
SELECT 1
FROM order_items AS oi
WHERE oi.product_id = p.product_id
);