الكلمة المفتاحية RIGHT JOIN في SQL
كلمة RIGHT JOIN تُستخدم لإرجاع جميع السجلات من الجدول الأيمن (table2)، والسجلات المطابقة من الجدول الأيسر (table1). إذا لم يوجد تطابق، تُرجع النتيجة NULL من جانب الجدول الأيسر. تعتبر RIGHT JOIN مفيدة جدًا عند تحليل البيانات التي قد تكون ناقصة في الجدول الأول.
بناء الجملة (Syntax)
SELECT column_name(s) FROM table1 RIGHT JOIN table2 ON table1.column_name = table2.column_name;
ملاحظة: في بعض قواعد البيانات يُطلق على RIGHT JOIN اسم RIGHT OUTER JOIN.
مثال من قاعدة بيانات Northwind
جزء من جدول الطلبات (Orders):
| OrderID | CustomerID | EmployeeID | OrderDate | ShipperID |
|---|---|---|---|---|
| 10308 | 2 | 7 | 1996-09-18 | 3 |
| 10309 | 37 | 3 | 1996-09-19 | 1 |
| 10310 | 77 | 8 | 1996-09-20 | 2 |
وجزء من جدول الموظفين (Employees):
| EmployeeID | LastName | FirstName | BirthDate | Photo |
|---|---|---|---|---|
| 1 | Davolio | Nancy | 1968-12-08 | EmpID1.pic |
| 2 | Fuller | Andrew | 1952-02-19 | EmpID2.pic |
| 3 | Leverling | Janet | 1963-08-30 | EmpID3.pic |
مثال استعلام RIGHT JOIN
الاستعلام التالي سيُرجع جميع الموظفين، وأي طلبات مرتبطة بهم إن وجدت:
SELECT Orders.OrderID, Employees.LastName, Employees.FirstName FROM Orders RIGHT JOIN Employees ON Orders.EmployeeID = Employees.EmployeeID ORDER BY Orders.OrderID;
لاحظ أن الموظفين الذين لم يتم تسجيل أي طلب لهم سيظهر لديهم NULL في عمود OrderID.
مقارنة RIGHT JOIN مع LEFT JOIN وINNER JOIN
- INNER JOIN: يُرجع الصفوف التي تحتوي على تطابق فقط في كلا الجدولين.
- LEFT JOIN: يُرجع كل الصفوف من الجدول الأيسر حتى إذا لم يكن هناك تطابق في الجدول الأيمن.
- RIGHT JOIN: يُرجع كل الصفوف من الجدول الأيمن حتى إذا لم يكن هناك تطابق في الجدول الأيسر.
تمرين
ماذا تفعل الكلمة المفتاحية RIGHT JOIN في SQL؟
- ترجع فقط السجلات المطابقة من كلا الجدولين
- ترجع جميع السجلات من الجدول الأيسر والسجلات المطابقة من الجدول الأيمن
- ترجع جميع السجلات من الجدول الأيمن والسجلات المطابقة من الجدول الأيسر ✅
- ترجع جميع السجلات من كلا الجدولين
تعليقات
إرسال تعليق