SQL RIGHT JOIN關鍵字
該RIGHT JOIN關鍵字返回右表(表2)的所有行,在左表(表1)匹配的行。 其結果是在左側空時不存在匹配。
SQL RIGHT JOIN語法
SELECT column_name(s)
FROM table1
RIGHT JOIN table2
ON table1.column_name = table2.column_name ;
要么:
SELECT column_name(s)
FROM table1
RIGHT OUTER JOIN table2
ON table1.column_name = table2.column_name ;
PS! 在某些數據庫中RIGHT JOIN稱為RIGHT OUTER JOIN。
演示數據庫
在本教程中,我們將使用眾所周知的Northwind示例數據庫。
下面是從選擇"Orders"表:
訂單ID | 客戶ID | 員工ID | 訂購日期 | ShipperID |
---|---|---|---|---|
10308 | 2 | 7 | 1996-09-18 | 3 |
10309 | 37 | 3 | 1996-09-19 | 1 |
10310 | 77 | 8 | 1996-09-20 | 2 |
而從選擇"Employees"表:
員工ID | 姓 | 名字 | 生日 | 照片 | 筆記 |
---|---|---|---|---|---|
1 | Davolio | Nancy | 12/8/1968 | EmpID1.pic | Education includes a BA in psychology..... |
2 | Fuller | Andrew | 2/19/1952 | EmpID2.pic | Andrew received his BTS commercial and.... |
3 | Leverling | Janet | 8/30/1963 | EmpID3.pic | Janet has a BS degree in chemistry.... |
SQL RIGHT JOIN例
下面的SQL語句將返回所有僱員,他們任何一筆訂單:
例
SELECT Orders.OrderID, Employees.FirstName
FROM Orders
RIGHT JOIN
Employees
ON Orders.EmployeeID=Employees.EmployeeID
ORDER BY
Orders.OrderID;
試一試»
注:RIGHT JOIN關鍵字返回所有來自右表(僱員)中的行,即使在左表(訂單)不匹配。