عبارت right join در SQL
عبارت RIGHT JOIN
کلید واژه RIGHT JOIN تمام سطرهای جدول سمت راست (table_name2) را برمی گرداند حتی اگر هیچ داده متناظری برای آن در جدول سمت چپ (table_name1) وجود نداشته باشد.
فرم عبارت RIGHT JOIN:
SELECT column_name(s)
FROM table_name1
RIGHT JOIN table_name2
ON table_name1.column_name=table_name2.column_name
FROM table_name1
RIGHT JOIN table_name2
ON table_name1.column_name=table_name2.column_name
در بعضی از پایگاه داده ها RIGHT JOIN به شکل RIGHT OUTER JOIN می باشد.
مثال:
جدول Persons:
P_Id | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | Hansen | Ola | Timoteivn 10 | Sandnes |
2 | Svendson | Tove | Borgvn 23 | Sandnes |
3 | Pettersen | Kari | Storgt 20 | Stavanger |
جدول Orders
O_Id | OrderNo | P_Id |
---|---|---|
1 | 77895 | 3 |
2 | 44678 | 3 |
3 | 22456 | 1 |
4 | 24562 | 1 |
5 | 34764 | 15 |
می خواهیم تمام سفارشات (orderها) را لیست کنیم حتی اگر نام فردی در مقابل آن سفارش وجود نداشته باشد.
از دستور زیر استفاده می کنیم:
SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
RIGHT JOIN Orders
ON Persons.P_Id=Orders.P_Id
ORDER BY Persons.LastName
FROM Persons
RIGHT JOIN Orders
ON Persons.P_Id=Orders.P_Id
ORDER BY Persons.LastName
جدول نتایج به شکل زیر خواهد بود:
LastName | FirstName | OrderNo |
---|---|---|
Hansen | Ola | 22456 |
Hansen | Ola | 24562 |
Pettersen | Kari | 77895 |
Pettersen | Kari | 44678 |
34764 |
کلید واژه RIGHT JOIN تمام سطرهای جدول سمت راست (Orders) را برمی گرداند حتی اگر هیچ داده متناظری برای آن در جدول سمت چپ (Persons) وجود نداشته باشد.
برای مشاهده فیلم های آموزشی مقدماتی تا پیشرفته پایگاه داده SQLServer کلیک کنید.
- نوشته شده توسط امیر پهلوان صادق
- بازدید: 17167