شرح صفوف ومحتوى الفقرة
يُعد نمط الاستبعاد الأيسر (Left Anti-Join) من أهم الأنماط الهندسية في SQL؛ إذ يُستخدم لاستخراج السجلات الموجودة في الجدول الأول والتي ليس لها أي سجل مقابل في الجدول الثاني (مثل العملاء المسجلين الذين لم يشتروا مطلقاً، أو المنتجات الراكدة). ويُبنى هذا النمط بدمج LEFT JOIN مع شرط WHERE right_table.primary_key IS NULL:
- لماذا نفحص المفتاح الأساسي للجدول الأيمن؟ لأن المفتاح الأساسي لا يقبل القيمة الفارغة في أي صف حقيقي؛ وبالتالي فإن تحقق الشرط
o.order_id IS NULLيعني قطعاً عدم وجود أي صف مرتبط في الجدول الأيمن.
SQL
-- Find customers who have never placed any order (Anti-Join)
SELECT
u.user_id,
u.full_name,
u.email
FROM users AS u
LEFT JOIN orders AS o
ON u.user_id = o.user_id
WHERE o.order_id IS NULL;