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

ما هو الجبر العلائقي؟
الجبر العلائقي لغة SQL هي لغة استعلام إجرائية تقبل نماذج من العلاقات كمدخلات، وتُعيد نماذج جديدة من العلاقات كمخرجات. تُطبّق هذه اللغة مجموعة ثابتة من المعاملات بشكل متكرر على علاقة واحدة أو أكثر، وتكون نتيجة كل معامل علاقةً بحد ذاتها يمكن استخدامها في العملية التالية. تعتمد محركات SQL على هذه الجبر لتخطيط وتنفيذ الاستعلامات.
الجبر العلائقي الأساسي Operaستعقد
تنقسم عوامل الجبر العلائقي إلى ثلاث مجموعات.
العلائقية الأحادية Operaستعقد
- حدد (σ)
- مشروع (π)
- إعادة تسمية (ρ)
Operations من نظرية المجموعات
- الاتحاد (∪)
- التقاطع (∩)
- الفرق (-)
- حاصل الضرب الديكارتي (×)
العلائقية الثنائية Operaستعقد
- الانضمام
- قطاع
تشرح الأقسام التالية كل عامل من عوامل التشغيل مع أمثلة عملية.
حدد (σ)
استخدم اختر تختار العملية مجموعة فرعية من الصفوف التي تحقق شرطًا معينًا. رمز سيجما σ يدل على ذلك:
σp(r)
أين σ هو المشغل، p هو الشرط الافتراضي، و r العلاقة (الجدول). يحافظ أمر SELECT على المخطط ويتجاهل الصفوف التي لا تستوفي الشرط.
مثال 1
σ topic = "Database" (Tutorials)
يختار الصفوف من الدروس حيث يكون الموضوع يساوي "قاعدة البيانات".
مثال 2
σ topic = "Database" AND author = "guru99" (Tutorials)
يختار الصفوف من الدروس حيث يكون الموضوع "قاعدة البيانات" والمؤلف هو guru99.
مثال 3
σ sales > 50000 (Customers)
يختار الصفوف من عملاء التي تزيد قيمة مبيعاتها عن 50,000.
الإسقاط (π)
استخدم إسقاط يقوم عامل الإسقاط بإزالة جميع السمات من جدول الإدخال باستثناء تلك المدرجة، مما ينتج عنه مجموعة فرعية عمودية. كما يقوم الإسقاط أيضًا بإزالة الصفوف المكررة الناتجة عن عملية الحذف.ping السمات. رمز باي π يدل على ذلك.
على سبيل المثال: انظر إلى الجدول التالي.
| هوية الزبون | اسم الزبون | الحالة |
|---|---|---|
| 1 | النشطه | |
| 2 | Amazon | النشطه |
| 3 | ابل | غير نشط |
| 4 | علي بابا | النشطه |
إسقاط البيانات بناءً على اسم العميل وحالته:
π CustomerName, Status (Customers)
| اسم الزبون | الحالة |
|---|---|
| النشطه | |
| Amazon | النشطه |
| ابل | غير نشط |
| علي بابا | النشطه |
إعادة تسمية (ρ)
استخدم إعادة تسمية المعامل هو عملية أحادية تُعطي اسمًا جديدًا لخاصية (أو لعلاقة كاملة). على سبيل المثال، ρ(a/b) R إعادة تسمية السمة b علاقة R إلى aتُعد إعادة التسمية مفيدة بشكل خاص عندما تحتاج إلى إجراء ربط ذاتي أو ربط علاقتين تشتركان في أسماء السمات.
الاتحاد Operation (∪)
استخدم UNION المعامل، المشار إليه بـ ∪، يقوم بإرجاع كل صف يظهر إما في العلاقة A أو العلاقة B، مع إزالة التكرارات تلقائيًا.
Result ← A ∪ B
لكي يكون الاتحاد صحيحاً:
- يجب أن يكون لـ A و B نفس عدد السمات (نفس عدد العناصر).
- يجب أن تكون نطاقات السمات المقابلة متوافقة.
- تتم إزالة الصفوف المكررة تلقائيًا.
مثال. انظر إلى هذين الجدولين:
| الجدول أ | الجدول ب | |||
|---|---|---|---|---|
| العمود 1 | العمود 2 | العمود 1 | العمود 2 | |
| 1 | 1 | 1 | 1 | |
| 1 | 2 | 1 | 3 | |
A ∪ B يعطي:
| العمود 1 | العمود 2 |
|---|---|
| 1 | 1 |
| 1 | 2 |
| 1 | 3 |
الفرق بين المجموعات (-)
يشير رمز الطرح إلى فرق المجموعة. نتائج A − B هي علاقة تحتوي على جميع الصفوف الموجودة في A ولكنها غير موجودة في B.
- يجب أن يكون كل من A و B متوافقين مع النقابة.
- يجب أن تتطابق أسماء السمات والمجالات.
مثال: أ - ب
| العمود 1 | العمود 2 |
|---|---|
| 1 | 2 |
التقاطع (∩)
استخدم تقاطع طرق المعامل، المشار إليه بـ ∩، يحدد علاقة تحتوي على كل صف يظهر في كل من A و B. يجب أن يكون A و B متوافقين مع الاتحاد.
تعريف مرئي للتقاطع.
مثال: أ ∩ ب
| العمود 1 | العمود 2 |
|---|---|
| 1 | 1 |
الضرب الديكارتي (×) في نظام إدارة قواعد البيانات
استخدم المنتج الديكارتي يجمع هذا الأمر كل صف من جدول مع كل صف من جدول آخر، ويدمج أعمدتهما. نادراً ما تكون النتيجة مفيدة بمفردها، ولكن عند دمجها مع شرط SELECT، تصبح أساساً لعملية JOIN. ويُطلق عليها أيضاً اسم الضرب التقاطعي أو الربط التقاطعي.
مثال: σ العمود 2 = '1' (A × B)
يُعيد التعبير كل صف من A × B لمن column 2 القيمة 1.
| العمود 1 | العمود 2 |
|---|---|
| 1 | 1 |
| 1 | 1 |
انضم إلى أكثر من Operaستعقد
A الانضمام هو ضرب ديكارتي متبوعًا بمسند اختيار. يُشار إلى عمليات الربط بـ ⋈ يتيح لك الرمز دمج الصفوف ذات الصلة من علاقات مختلفة بطريقة ذات معنى.
أنواع الربط:
- الوصلات الداخلية: انضمام ثيتا، انضمام إيكوي، انضمام ناتشورال.
- الوصلات الخارجية: الوصلات الخارجية اليسرى واليمنى والكاملة.
صلة داخلية
في الانضمام الداخلييتم تضمين الصفوف التي تستوفي معايير المطابقة فقط؛ أما الباقي فيتم تجاهله.
ثيتا انضم
الصيغة العامة لكلمة JOIN هي ثيتا ينضم، ويرمز لها بـ θ. يمكن لعملية الربط ثيتا استخدام أي شرط مقارنة في معايير الاختيار الخاصة بها.
A ⋈θ B
فمثلا:
A ⋈ A.column 2 > B.column 2 (B)
| العمود 1 | العمود 2 |
|---|---|
| 1 | 2 |
إيكوي جوين
عندما تستخدم عملية الربط ثيتا شروط المساواة فقط، فإنها تصبح انضمام إيكوي.
A ⋈ A.column 2 = B.column 2 (B)
| العمود 1 | العمود 2 |
|---|---|
| 1 | 1 |
يُعدّ وصل Equi أحد أكثر أنماط الوصل استخدامًا، و RDBMS عادةً ما يبذل مُحسِّن الاستعلامات جهداً كبيراً لجعله فعالاً.
الانضمام الطبيعي (⋈)
A صلة طبيعية يتطلب ذلك وجود سمة (عمود) مشتركة بين العلاقات. يجب أن تحمل السمة المشتركة نفس الاسم والنطاق. تحتوي النتيجة على نسخة واحدة من العمود المطابق.
انظر إلى هذين الجدولين.
| الجدول ج | |
|---|---|
| في | مربع |
| 2 | 4 |
| 3 | 9 |
| الجدول د | |
|---|---|
| في | مكعب |
| 2 | 8 |
| 3 | 27 |
C ⋈ D ينتج عنه:
| في | مربع | مكعب |
|---|---|---|
| 2 | 4 | 8 |
| 3 | 9 | 27 |
الانضمام الخارجي
An صلة الخارجي يحتفظ بالصفوف التي تستوفي معايير المطابقة و الصفوف التي لا تحتوي على ذلك، وملء الأعمدة المفقودة بـ NULL.
الانضمام الخارجي الأيسر (أ ⟕ ب)
يُبقي الربط الخارجي الأيسر كل صف في العلاقة اليسرى. إذا لم يكن هناك صف مطابق في الجدول A في الجدول B، فسيتم ملء السمات التي ساهم بها الجدول B بقيمة NULL.
انظر إلى الجداول التالية:
| الجدول أ | |
|---|---|
| في | مربع |
| 2 | 4 |
| 3 | 9 |
| 4 | 16 |
| الجدول ب | |
|---|---|
| في | مكعب |
| 2 | 8 |
| 3 | 18 |
| 5 | 75 |
A ⟕ B يعطي:
| في | مربع | مكعب |
|---|---|---|
| 2 | 4 | 8 |
| 3 | 9 | 18 |
| 4 | 16 | اغية |
وصلة خارجية يمنى (أ ⟖ ب)
يُبقي الربط الخارجي الأيمن كل صف في العلاقة الصحيحة. إذا لم يكن هناك صف مطابق في الجدول B في الجدول A، فسيتم ملء الأعمدة التي ساهم بها الجدول A بقيم NULL.
A ⟖ B يعطي:
| في | مكعب | مربع |
|---|---|---|
| 2 | 8 | 4 |
| 3 | 18 | 9 |
| 5 | 75 | اغية |
وصلة خارجية كاملة (أ ⟗ ب)
يُبقي الربط الخارجي الكامل على كل صف من كلا الجدولين، بغض النظر عما إذا كان شرط الربط متطابقًا أم لا. وتُصبح القيم المفقودة في أي من الجانبين فارغة (NULL).
A ⟗ B يعطي:
| في | مربع | مكعب |
|---|---|---|
| 2 | 4 | 8 |
| 3 | 9 | 18 |
| 4 | 16 | اغية |
| 5 | اغية | 75 |
Operaملخص مرجعي
استخدم جدول المراجع هذا لتذكر ما يفعله كل عامل بنظرة سريعة.
| Operation (رمز) | الهدف |
|---|---|
| حدد (σ) | يختار مجموعة فرعية من الصفوف التي تحقق شرطًا معينًا. |
| مشروع (π) | يحتفظ فقط بالسمات المدرجة ويزيل الصفوف المكررة. |
| الاتحاد (∪) | يُعيد كل صف يظهر في A أو B بدون تكرارات. |
| الفرق بين المجموعتين (-) | تُرجع هذه الدالة الصفوف الموجودة في المجموعة A والتي لا توجد في المجموعة B. |
| التقاطع (∩) | يُعيد هذا الأمر الصفوف التي تظهر في كل من A و B. |
| حاصل الضرب الديكارتي (×) | يجمع كل صف من A مع كل صف من B. |
| INNER JOIN | يحتفظ فقط بالصفوف التي تتطابق مع شرط الربط. |
| THETA JOIN (θ) | الربط العام باستخدام أي دالة مقارنة. |
| انضمام متساوٍ | عملية الربط ثيتا التي تستخدم مقارنات المساواة فقط. |
| الانضمام الطبيعي (⋈) | يربط العلاقات بناءً على السمات التي تشترك في نفس الاسم والنطاق. |
| وصلة خارجية يسارية (⟕) | يحتفظ بكل صف من العلاقة اليسرى، ويملأ الجانب الأيمن بـ NULL. |
| وصلة خارجية يمنى (⟖) | يحتفظ بكل صف من العلاقة اليمنى، ويملأ اليسار بـ NULL. |
| وصلة خارجية كاملة (⟗) | يحتفظ بكل صف من كلا العلاقتين، ويملأ القيم المفقودة بـ NULL. |



