أنواع الربط في أنظمة إدارة قواعد البيانات: THETA، والربط الداخلي، والربط الخارجي، والربط المتساوي
⚡ ملخص ذكي
تُعدّ عملية الربط في أنظمة إدارة قواعد البيانات عملية ثنائية تجمع صفوفًا من جدولين أو أكثر باستخدام مفاتيحها الأساسية والأجنبية. وتنقسم عمليات الربط إلى ربط داخلي، يُعيد الصفوف المتطابقة فقط، وربط خارجي، يحتفظ بالصفوف غير المتطابقة ويملأ الفراغات بقيم فارغة.

ما هو الربط (Join) في نظام إدارة قواعد البيانات (DBMS)؟
انضم إلى نظام إدارة قواعد البيانات (DBMS). هي عملية ثنائية تسمح لك بدمج عملية الربط مع عملية الاختيار في عبارة واحدة. الهدف من إنشاء شرط الربط هو دمج البيانات من جدولين أو أكثر. يتم ربط الجداول باستخدام مفاتيحها الأساسية و مفاتيح خارجية.
أنواع الانضمام
هناك نوعان أساسيان من الصلات في نظام إدارة قواعد البيانات:
- الصلات الداخلية: ثيتا، الطبيعية، EQUI
- المفاصل الخارجية: يسار، يمين، كامل
يعرض الجدول أدناه جميع أنواع الربط قبل شرح كل نوع بمثال.
| انضم إلى أكثر من | سياسات الإرجاع والاستبدال | صفوف غير متطابقة |
|---|---|---|
| داخلي (ثيتا / إكو / طبيعي) | الصفوف المطابقة للشرط في كلا الجدولين | إسقاط |
| الجانب الخارجي الأيسر | جميع الصفوف اليسرى بالإضافة إلى المباريات | محفوظ من اليسار، فارغ على اليمين |
| الحق الخارجي | جميع الصفوف اليمنى بالإضافة إلى المباريات | محفوظ من اليمين، لا شيء على اليسار |
| خارجي كامل | جميع الصفوف من كلا الجدولين | حُرم من كليهما، وحُرم من أي شيء حيثما كان مفقودًا |
صلة داخلية
صلة داخلية تُستخدم هذه العملية لإرجاع الصفوف من كلا الجدولين التي تُحقق الشرط المُحدد. وهي عملية الربط الأكثر استخدامًا، ويمكن اعتبارها نوع الربط الافتراضي.
الربط الداخلي، أو الربط المتساوي، هو ربط يعتمد على المقارنات ويستخدم مقارنات المساواة في شرط الربط. مع ذلك، إذا استخدمت عوامل مقارنة أخرى مثل ">"، فلا يمكن تسميته ربطًا متساويًا. وينقسم الربط الداخلي إلى ثلاثة أنواع فرعية:
- ثيتا ينضم
- صلة طبيعية
- الانضمام إلى EQUI
ثيتا انضم
ثيتا انضم تتيح لك هذه الخاصية دمج جدولين بناءً على الشرط المُمثَّل بالرمز ثيتا. تعمل عمليات الربط ثيتا مع جميع عوامل المقارنة، ويُرمز لها بالرمز θ. الحالة العامة لعملية الربط تسمى الربط ثيتا.
بناء الجملة:
A ⋈θ B
يمكن استخدام أي شروط في معايير الاختيار في عملية الربط ثيتا.
خذ بعين الاعتبار الجداول التالية.
| الجدول أ | الجدول ب | |||
|---|---|---|---|---|
| العمود 1 | العمود 2 | العمود 1 | العمود 2 | |
| 1 | 1 | 1 | 1 | |
| 1 | 2 | 1 | 3 | |
فمثلا:
A ⋈ A.column 2 > B.column 2 (B)
| أ ⋈ أ.العمود 2 > ب.العمود 2 (ب) | |
|---|---|
| العمود 1 | العمود 2 |
| 1 | 2 |
انضم إلى EQUI
انضم إلى EQUI يتم ذلك عندما يستخدم الربط ثيتا شرط التكافؤ فقط. يُعد الربط المتساوي (EQUI) أصعب عملية يمكن تنفيذها بكفاءة في RDBMSوهذا أحد الأسباب التي قد تؤدي إلى مشاكل في أداء نظام إدارة قواعد البيانات العلائقية.
فمثلا:
A ⋈ A.column 2 = B.column 2 (B)
| أ ⋈ أ. العمود 2 = ب. العمود 2 (ب) | |
|---|---|
| العمود 1 | العمود 2 |
| 1 | 1 |
الانضمام الطبيعي (⋈)
انضمام طبيعي لا يستخدم هذا النوع من الربط أي عامل مقارنة. في هذا النوع من الربط، يجب أن تتطابق أسماء السمات ونطاقها. أما في الربط الطبيعي، فيجب أن يكون هناك سمة مشتركة واحدة على الأقل بين العلاقتين.
يقوم هذا النظام بعملية اختيار تُحقق المساواة بين السمات التي تظهر في كلا العلاقتين، ويزيل السمات المكررة.
على سبيل المثال: انظر إلى الجدولين التاليين.
| C | |
|---|---|
| في | مربع |
| 2 | 4 |
| 3 | 9 |
| D | |
|---|---|
| في | مكعب |
| 2 | 8 |
| 3 | 18 |
C ⋈ D
| ج ⋈ د | ||
|---|---|---|
| في | مربع | مكعب |
| 2 | 4 | 8 |
| 3 | 9 | 18 |
الانضمام الخارجي
An الانضمام الخارجي لا يشترط هذا النوع من الربط وجود سجل مطابق لكل سجل في الجدولين المرتبطين. في هذا النوع، يحتفظ الجدول بكل سجل حتى في حال عدم وجود سجل مطابق آخر. أنواع الربط الخارجي الثلاثة هي:
- ترك صلة خارجية
- حق الانضمام الخارجي
- وصلة خارجية كاملة
الانضمام الخارجي الأيسر (أ ⟕ ب)
ترك صلة خارجية تُعيد هذه الدالة جميع الصفوف من الجدول الموجود على اليسار، حتى لو لم يتم العثور على أي صفوف مطابقة في الجدول الموجود على اليمين. وعندما لا يتم العثور على سجل مطابق في الجدول الموجود على اليمين، تُعيد الدالة قيمة فارغة (null).
انظر إلى الجدولين التاليين.
| A | |
|---|---|
| في | مربع |
| 2 | 4 |
| 3 | 9 |
| 4 | 16 |
| B | |
|---|---|
| في | مكعب |
| 2 | 8 |
| 3 | 18 |
| 5 | 75 |
AB
| أ ⟕ ب | ||
|---|---|---|
| في | مربع | مكعب |
| 2 | 4 | 8 |
| 3 | 9 | 18 |
| 4 | 16 | - |
وصلة خارجية يمنى (أ ⟖ ب)
حق الانضمام الخارجي تُعيد هذه الدالة جميع الأعمدة من الجدول الموجود على اليمين، حتى لو لم يتم العثور على أي صفوف مطابقة في الجدول الموجود على اليسار. في حال عدم وجود أي تطابقات في الجدول الأيسر، تُعيد الدالة قيمة فارغة (null). الربط الخارجي الأيمن هو عكس الربط الأيسر.
AB
| أ ⟖ ب | ||
|---|---|---|
| في | مكعب | مربع |
| 2 | 8 | 4 |
| 3 | 18 | 9 |
| 5 | 75 | - |
وصلة خارجية كاملة (أ ⟗ ب)
في باقة وصلة خارجية كاملة، يتم تضمين كافة الصفوف من كلتا العلاقتين في النتيجة، بغض النظر عن حالة المطابقة.
على سبيل المثال:
AB
| أ ⟗ ب | ||
|---|---|---|
| في | مربع | مكعب |
| 2 | 4 | 8 |
| 3 | 9 | 18 |
| 4 | 16 | - |
| 5 | - | 75 |


