لماذا نستخدم أسماء مستعارة مختلفة في self join؟

سهلقراءة دقيقةآخر تحديث 3 أكتوبر 2026

SQL قواعد البيانات

الإجابة

يعني self join استخدام الجدول نفسه أكثر من مرة داخل عملية ربط. نحتاج هذه الفكرة عندما تكون العلاقة بين صفوف موجودة في جدول واحد، مثل علاقة الموظف بمديره. قد يحتوي جدول الموظفين على عمود manager_id يشير إلى عمود id في الجدول نفسه، فلا نحتاج إلى إنشاء جدول مستقل للمديرين.

نعطي كل ظهور للجدول اسما مستعارا مختلفا حتى نميز الأدوار. يمكن أن يمثل e الموظف، بينما يمثل m المدير. عند كتابة شرط الربط أو اختيار الأعمدة، يوضح الاسم المستعار أي دور نقصده، حتى لو كانت أسماء الأعمدة متطابقة تماما بين الطرفين.

مثال

SELECT e.name AS employee_name,
       m.name AS manager_name
FROM employees AS e
LEFT JOIN employees AS m
  ON e.manager_id = m.id;

الأسماء المستعارة لا تنسخ البيانات ولا تغير بنية الجدول. هي مراجع داخل الاستعلام تساعد على التعبير عن العلاقة وقراءة النتيجة بوضوح.

باختصار: نستخدم اسمين مستعارين لتمييز دوري الجدول نفسه عند ربط صفوفه بعضها ببعض.

هل تريد تعلّم SQL خطوة بخطوة مع تمارين عملية؟ تابع مسار SQL من الأساسيات للاحتراف.

اختبر فهمك

ما الغرض من إعطاء جدول employees الاسمين e وm عند ربط الموظفين بمديريهم؟