عبارت کلیدی FULL JOIN تمام ردیف های موجود در جداول را با وجود حتی یک همخوانی میان جداول بر میگرداند .
دستور FULL JOIN در SQL
SELECT column_name(s) FROM table_name1 FULL JOIN table_name2 ON table_name1.column_name=table_name2.column_name
مثال از FULL JOIN:
جدول “PERSON”:
P_Id | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | Hansen | Ola | Timoteivn 10 | Sandnes |
2 | Svendson | Tove | Borgvn 23 | Sandnes |
3 | Pettersen | Kari | Storgt 20 | Stavanger |
جدول “ORDER”:
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 FULL 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 |
Svendson | Tove | |
34764 |
FUULL JOIN تمام ردیف ها از جدول PERSON و همچنین تمام ردیف ها از جدول ORDER را برمیگرداند حتی اگر هیچ همخوانی بین آنها موجود نباشد در هر صورت اطلاعات بین دو جدول به صورت فهرست در خواهد آمد
مترجم :علیرضا مسگری