TOP

SQL FULL OUTER JOIN الكلمة الأساسية

وصف SQL FULL OUTER JOIN

تقوم الكلمة الأساسية FULL OUTER JOIN بإرجاع كافة السجلات إذا كان هناك تطابق في السجلات اليسرى (table1) أو اليمنى (table2) من الجدول.


التعليمات FULL OUTER JOIN و FULL JOIN هي نفسها.

FULL OUTER JOIN بناء الجملة

SELECT column_name(s)
FROM table1
FULL OUTER JOIN table2
ON table1.column_name = table2.column_name
WHERE condition

SQL FULL JOIN

قاعدة البيانات التوضيحية

في هذا البرنامج التعليمي سوف نستخدم قاعدة البيانات الشهيرة "Northwind".

يوجد أدناه نموذج من الجدول "Customers" ("العملاء"):

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.5021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.5023Mexico
4Around the HornThomas Hardy120 Hanover Sq.LondonWA1 1DPUK
5Berglunds snabbköpChristina BerglundBerguvsvägen 8LuleåS-958 22Sweden

والعينة من الجدول "Orders" ("الطلبات"):

ProductIDOrderIDCustomerIDEmployeeIDOrderDateShipperID
1102489051996-07-043
2102498161996-07-051
3102503441996-07-082
4102518431996-07-081
5102527641996-07-092

SQL FULL OUTER JOIN مثال

تحدد عبارة SQL التالية جميع العملاء وجميع الطلبات:

Run SQLSELECT Customers.CustomerName, Orders.OrderID 
FROM Customers 
FULL OUTER JOIN Orders ON Customers.CustomerID = Orders.CustomerID 
ORDER BY Customers.CustomerName

قد تبدو عينة من مجموعة النتائج كما يلي:

CustomerName OrderID
Null 10309
Null 10310
Alfreds Futterkiste Null
Ana Trujillo Emparedados y helados 10308
Antonio Moreno Taquería Null
تقوم الكلمة الأساسية FULL OUTER JOIN بإرجاع كافة السجلات المتطابقة من كلا الجدولين بغض النظر عما إذا كان الجدول الآخر متطابقًا أم لا. وبالتالي، إذا كانت هناك صفوف في "Customers" ("العملاء") لا تحتوي على أي مطابقات في "Orders" ("الطلبات")، أو إذا كانت هناك صفوف في "الطلبات" لا تحتوي على أي مطابقات في "العملاء"، فإن هذه الصفوف تكون أيضًا سيتم سردها.