انتقل إلى محتوى الدرس

Set Difference with EXCEPT طرح النتائج بمعامل EXCEPT

تعلّم معاملات المجموعات UNION و INTERSECT و EXCEPT في MySQL بأسلوب MySQL 8 الحديث مع أمثلة استعلامات SQL وتطبيقات تفاعلية.
1 صفوف تعليمية
MySQL
8 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

يوفّر المعامل EXCEPT (المدعوم منذ MySQL 8.0.31) عملية طرح المجموعات رياضياً؛ إذ يرجع الصفوف الموجودة في الاستعلام الأول (العلوي) شريطة عدم وجودها في مخرجات الاستعلام الثاني (السفلي):

  • أهمية ترتيب الاستعلامين: بخلاف الإبدال الممكن في UNION وINTERSECT، فإن كتابة A EXCEPT B تعطي نتيجة مختلفة تماماً عن B EXCEPT A.
  • المطابقة الآمنة لقيم NULL: تعامل معاملات المجموعات قيمتي NULL المتقابلتين كقيمتين متساويتين عند طرح الصفوف أو إزالة التكرار.
SQL
-- Return products in the catalog that have never been discontinued
SELECT product_id, sku_code, product_title
FROM catalog_products
EXCEPT
SELECT product_id, sku_code, product_title
FROM discontinued_products;