NATURAL JOIN 關鍵字 (SQL NATURAL JOIN Keyword) - 自然連接
自然連接有 NATURAL JOIN、NATURAL LEFT JOIN、NATURAL RIGHT JOIN,兩個表格在進行 JOIN 時,加上 NATURAL 這個關鍵字之後,兩資料表之間同名的欄位會被自動結合在一起。
NATURAL JOIN 語法 (SQL NATURAL JOIN Syntax)
SELECT table_column1, table_column2...
FROM table_name1
NATURAL JOIN table_name2;
NATURAL 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 |
現在我們想列出所有客戶的訂單編號資料,我們可以作一個 NATURAL JOIN 查詢:
SELECT customers.Name, orders.Order_No
FROM customers
NATURAL JOIN orders;
查詢結果如下:
Name | Order_No |
---|---|
李三 | 2572 |
李三 | 7375 |
張一 | 7520 |
張一 | 1054 |
注意到了嗎?返回結果同等於下面這個 INNER JOIN 查詢:
SELECT customers.Name, orders.Order_No
FROM customers
INNER JOIN orders
ON customers.C_Id=orders.C_Id;