مرجع سريع

ورقة غش ربط الجداول في SQL (SQL Joins)

دليل مرجعي سريع لعمليات ربط الجداول في SQL: توضيح INNER JOIN و LEFT JOIN و RIGHT JOIN و FULL OUTER JOIN مع الصياغة ومنطق مجموعات فين.

· تاريخ النشر

مثال الصياغة

SELECT order_items.id, orders.order_date, order_items.price
FROM order_items
LEFT OUTER JOIN orders
  ON order_items.order_id = orders.id;

تدمج عمليات الربط (Joins) الصفوف من جدولين أو أكثر بناءً على عمود مشترك مرتبط بينهما.

تمثيل بصري لعمليات الربط

SELECT * FROM `A` INNER JOIN `B`
┌────────┐
│ A  ┌───┼────┐
│    │ ∩ │    │
└────┼───┘  B │
     └────────┘
نوع الربط البيانات المضمنة الوصف
INNER JOIN ∩ يُرجع السجلات ذات القيم المتطابقة في كلا الجدولين
LEFT OUTER JOIN A + ∩ يُرجع جميع السجلات من الجدول A، والسجلات المطابقة من الجدول B
RIGHT OUTER JOIN ∩ + B يُرجع جميع السجلات من الجدول B، والسجلات المطابقة من الجدول A
FULL OUTER JOIN A + ∩ + B يُرجع جميع السجلات عند وجود تطابق في الجدول الأيمن أو الأيسر

أشكال الربط وعوامل التصفية

الربط الأيسر مع استبعاد التقاطع (Left Join Excluding Intersection)

SELECT * FROM A
LEFT JOIN B ON A.key = B.key
WHERE B.key IS NULL;

الربط الأيمن مع استبعاد التقاطع (Right Join Excluding Intersection)

SELECT * FROM A
RIGHT JOIN B ON A.key = B.key
WHERE A.key IS NULL;

الربط الخارجي الكامل مع استبعاد التقاطع (Full Outer Join Excluding Intersection)

SELECT * FROM A
FULL OUTER JOIN B ON A.key = B.key
WHERE A.key IS NULL OR B.key IS NULL;

موضوعات ذات صلة