SQL JOIN 连接详细介绍及简单使用实例
SQLJOIN连接
SQLJOIN子句用于把来自两个或多个表的行结合起来,基于这些表之间的共同字段。
最常见的JOIN类型:SQLINNERJOIN(简单的JOIN)。SQLINNERJOIN从多个表中返回满足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
AlfredsFutterkiste
MariaAnders
Germany
2
AnaTrujilloEmparedadosyhelados
AnaTrujillo
Mexico
3
AntonioMorenoTaquería
AntonioMoreno
Mexico
请注意,"Orders"表中的"CustomerID"列指向"Customers"表中的客户。上面这两个表是通过"CustomerID"列联系起来的。
然后,如果我们运行下面的SQL语句(包含INNERJOIN):
SELECTOrders.OrderID,Customers.CustomerName,Orders.OrderDate FROMOrders INNERJOINCustomers ONOrders.CustomerID=Customers.CustomerID;
运行结果如下所示:
OrderID
CustomerName
OrderDate
10308
AnaTrujilloEmparedadosyhelados
9/18/1996
10365
AntonioMorenoTaquería
11/27/1996
10383
AroundtheHorn
12/16/1996
10355
AroundtheHorn
11/15/1996
10278
Berglundssnabbköp
8/12/1996
不同的SQLJOIN
在我们继续讲解实例之前,我们先列出您可以使用的不同的SQLJOIN类型:
- INNERJOIN:如果表中有至少一个匹配,则返回行
- LEFTJOIN:即使右表中没有匹配,也从左表返回所有的行
- RIGHTJOIN:即使左表中没有匹配,也从右表返回所有的行
- FULLJOIN:只要其中一个表中存在匹配,则返回行
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!