أنواع ال JOIN في لغات الاستعلام SQL

عليكم السـلام ورحمة الله وبركاته

أنواع ال JOIN في لغات الاستعلام SQL هي :-
Inner Join , Outer Join , Cross Join
سأستخدم من باب التوضيح جدولين قمت بإنشائهما
وهما Manager و Employee وهذا وصفهما :-
ال Inner Join وهي الاكثر استخداما صيغتها كالتالي

Select a.MgrName , a.MgrNum ,  b.EmpName from
Manager a inner join
Emp b on
a.MgrNum = b.MgrNum

الجدول الموجود قبل كلمة Inner Join يشار له بال Left Table

وما بعد ال Inner Join بال Right Table .

الجملة السابقة تقوم بأخذ جميع صفوف الجدول Manager

ومن ثم مقارنتهم بالجدول Emp وطبعا حسب الشرط الموجود

و في مثالنا السابق يأتي الشرط بعد كلمة On وقد حددنا

أن يكون رقم المدير في الجدول Manager يساوي رقم المدير

في الجدول Employee , بعد أن يتم أخذ جميع الصفوف في الجدول

Manager تتم مقارنتهم في الجدول Employee بالاعتماد على الشرط

والموجود سيظهر كنتيجة , في المثال السابق ستكون النتيجة أسماء

جميع الموظفين وأسماء مدرائهم .

يعني بإختصار تقوم بدمج السجلات من الجدولين أينما وجدت

قيم متطابقة في حقل مشترك.

********************************
********************************

ال Outer Join تنقسم بدورها الى 3 أنواع

Left Outer Join , Right Outer Join , Full Outer Join .

ال Left Outer Join تقوم بعمل ال Inner Join بالاضافة الى

إرجاع الحقول الموجودة في ال Left Table دون أن يتحقق الشرط

مع ال Right Table والحقل أو الحقول التي لا يتحقق فيها الشرط والتي

تظهر ضمن النتائج والعائدة من ال Right Table ستكون قيمها NULL .

ال Right Outer Join تقوم بعمل ال Inner Join بالاضافة الى

إرجاع الحقول الموجودة في ال Right Table دون أن يتحقق الشرط

مع ال Left Table والحقل أو الحقول التي لا يتحقق فيها الشرط والتي

تظهر ضمن النتائج والعائدة من ال Left Table ستكون قيمها NULL .

ال Full Outer Join هي دمج لل Left و ال Right وستعود جميع الحقول

من ال Right Table ومن ال Left Table سواء تحقق الشرط او لم يتحقق .

********************************
********************************

ال Cross Join تختلف قليلا عن ما ذكر فهي ليست بحاجة الى شرط On

فهي تقوم بإرجاع مجموع الصفوف في ال Left Table * مجموع الصفوف

في ال Right Table يعني لو كان لدينا 15 صف في ال Left Table و

3 صفوف في ال Right Table فإن النتيجة ستكون 45 صف .

أتمنى أن يكون الشرح واضح و مفهوم .

بالتوفيق

كم انت كبير يا SQL Server

هذا الموضوع للأخ DataBase

Advertisements

2 thoughts on “أنواع ال JOIN في لغات الاستعلام SQL”

  1. اشكرك حتى تستغيث اخي المعلومه دي بقالي 3 ايام بحاول افهمها مفهمتهاش بسلاسه وسهوله غير من حضرتك جزاك الله خيرا عذرا لم اعتد على الرد ولكن عجزت عن شكرك

شاركنا بارد

إملأ الحقول أدناه بالمعلومات المناسبة أو إضغط على إحدى الأيقونات لتسجيل الدخول:

WordPress.com Logo

أنت تعلق بإستخدام حساب WordPress.com. تسجيل خروج   / تغيير )

صورة تويتر

أنت تعلق بإستخدام حساب Twitter. تسجيل خروج   / تغيير )

Facebook photo

أنت تعلق بإستخدام حساب Facebook. تسجيل خروج   / تغيير )

Google+ photo

أنت تعلق بإستخدام حساب Google+. تسجيل خروج   / تغيير )

Connecting to %s