TOP

SQL Self Join (الانضمام الذاتي)

وصف SQL Self Join

الانضمام الذاتي هو انضمام عادي حيث يتم ضم الجدول إلى نفسه.


Self Join بناء الجملة

SELECT column_name(s)
FROM table1 T1, table1 T2
WHERE condition

T1 وT2 هما أسماء مستعارة مختلفة لنفس الجدول.

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

في هذا البرنامج التعليمي سوف نستخدم قاعدة البيانات الشهيرة "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

SQL Self Join مثال

تحدد عبارة SQL التالية العملاء من مدينة واحدة (City):

Run SQLSELECT A.CustomerName AS CustomerName1, B.CustomerName AS CustomerName2, A.City 
FROM Customers A, Customers B 
WHERE A.CustomerID <> B.CustomerID 
AND A.City = B.City 
ORDER BY A.City
لهجة MySQL تستخدم "!=" بدلاً من "<>".