الثلاثاء، 1 يوليو 2014

Self Join

Self Join
Self Join هي ربط الجدول بنفسة, ما معنى ذلك, ببساطة لدينا جدول واحد ولكن نقوم بعمل Alias  له فيكون مثلا الجدول tblEmployee مرة بالاسم tblEmployee E, ورة اخرى tblEmployee M. ويمكن استخدام جمل الربط المعتادة Inner Join , Left Join , Right Join.

المثال التالي سوف يوضح معنى Self Join.


جدول الموظفين tblEmployee:


جملة Command Self Join مع Left Outer Join:
الحصول علي كل السجلات المتطابقة من الجدولين والغير متطابقة من الجدول الأيسر.

SELECT  E.Name AS Employee ,
        M.Name AS Manager
FROM    dbo.tblEmployee E
        LEFT OUTER JOIN tblEmployee M ON E.ManagerID = M.EmployeeID

5 Rows


جملة Command Self Join مع  Inner Join:
الحصول علي كل السجلات المتطابقة من الجدولين ... و الغير متطابقة يتم حذفها.
SELECT  E.Name AS Employee ,
        M.Name AS Manager
FROM    dbo.tblEmployee E
        INNER JOIN tblEmployee M ON E.ManagerID = M.EmployeeID



جملة Command Self Join مع  Cross Join:
Cross Join تقوم بإرجاع كل السجلات المتطابقة بين الجداول ... و الغير متطابقة من الجداول وتقوم باسنادها إلى بعض.
SELECT  E.Name AS Employee ,
        M.Name AS Manager
FROM    dbo.tblEmployee E
        CROSS JOIN tblEmployee M

25 Rows




ليست هناك تعليقات:

إرسال تعليق

يسعدني إرسال تعليقاتكم وأسئلتكم واقتراحاتكم