SQL JOIN 連接
SQL JOIN 子句用於把來自兩個或多個表的行結合起來,基於這些表之間的共同字段。
最常見的 JOIN 類型:SQL INNER JOIN(簡單的 JOIN)。 SQL INNER JOIN 從多個表中返回滿足 JOIN 條件的所有行。
讓我們看看選自 "Orders" 表的數據:
OrderID |
CustomerID |
OrderDate |
10308
2
1996-09-18
10309
37
1996-09-19
10310
77
1996-09-20
然後,看看選自 "Customers" 表的數據:
CustomerID |
CustomerName |
ContactName |
Country |
1
Alfreds Futterkiste
Maria Anders
Germany
2
Ana Trujillo Emparedados y helados
Ana Trujillo
Mexico
3
Antonio Moreno Taquería
Antonio Moreno
Mexico
請注意,"Orders" 表中的 "CustomerID" 列指向 "Customers" 表中的客戶。上面這兩個表是通過 "CustomerID" 列聯系起來的。
然後,如果我們運行下面的 SQL 語句(包含 INNER JOIN):
SELECT Orders.OrderID, Customers.CustomerName, Orders.OrderDate
FROM Orders
INNER JOIN Customers
ON Orders.CustomerID=Customers.CustomerID;
運行結果如下所示:
OrderID |
CustomerName |
OrderDate |
10308
Ana Trujillo Emparedados y helados
9/18/1996
10365
Antonio Moreno Taquería
11/27/1996
10383
Around the Horn
12/16/1996
10355
Around the Horn
11/15/1996
10278
Berglunds snabbköp
8/12/1996
不同的 SQL JOIN
在我們繼續講解實例之前,我們先列出您可以使用的不同的 SQL JOIN 類型:
- INNER JOIN:如果表中有至少一個匹配,則返回行
- LEFT JOIN:即使右表中沒有匹配,也從左表返回所有的行
- RIGHT JOIN:即使左表中沒有匹配,也從右表返回所有的行
- FULL JOIN:只要其中一個表中存在匹配,則返回行
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!