FULL JOIN 關鍵字 (SQL FULL JOIN Keyword) - 全部外部連接
FULL JOIN 即為 LEFT JOIN 與 RIGHT JOIN 的聯集,它會返回左右資料表中所有的紀錄,不論是否符合連接條件。
FULL JOIN 語法 (SQL FULL JOIN Syntax)
SELECT table_column1, table_column2...
FROM table_name1
FULL JOIN table_name2
ON table_name1.column_name=table_name2.column_name;
FULL JOIN 查詢用法 (Example)
這是一個客戶資料表 customers:
C_Id | Name | City | Address | Phone |
---|---|---|---|---|
1 | 張一 | 台北市 | XX路100號 | 02-12345678 |
2 | 王二 | 新竹縣 | YY路200號 | 03-12345678 |
3 | 李三 | 高雄縣 | ZZ路300號 | 07-12345678 |
而這是產品訂單的資料表 orders:
O_Id | Order_No | C_Id |
---|---|---|
1 | 2572 | 3 |
2 | 7375 | 3 |
3 | 7520 | 1 |
4 | 1054 | 1 |
5 | 1257 | 5 |
我們來作一個 FULL JOIN 查詢:
SELECT customers.Name, orders.Order_No
FROM customers
FULL JOIN orders
ON customers.C_Id=orders.C_Id;
查詢結果如下:
Name | Order_No |
---|---|
李三 | 2572 |
李三 | 7375 |
張一 | 7520 |
張一 | 1054 |
1257 | |
王二 |
MySQL 資料庫中沒有 FULL JOIN,但是可以用 UNION 來模擬。