下图展示了 LEFT JOIN、RIGHT JOIN、INNER JOIN、OUTER JOIN 相关的 7 种用法。

一张图看懂 SQL 的各种 join 用法_内连接

具体分解如下:

1.INNER JOIN(内连接)

一张图看懂 SQL 的各种 join 用法_右连接_02

 

SELECT <select_list> 
FROM Table_A A
INNER JOIN Table_B B
ON A.Key = B.Key

 

2.LEFT JOIN(左连接)

一张图看懂 SQL 的各种 join 用法_内连接_03

 

SELECT <select_list>
FROM Table_A A
LEFT JOIN Table_B B
ON A.Key = B.Key

 

3.RIGHT JOIN(右连接)

一张图看懂 SQL 的各种 join 用法_外连接_04

 

SELECT <select_list>
FROM Table_A A
RIGHT JOIN Table_B B
ON A.Key = B.Key

 

4.OUTER JOIN(外连接)

一张图看懂 SQL 的各种 join 用法_java程序_05

 

SELECT <select_list>
FROM Table_A A
FULL OUTER JOIN Table_B B
ON A.Key = B.Key

 

5.LEFT JOIN EXCLUDING INNER JOIN(左连接-内连接)

一张图看懂 SQL 的各种 join 用法_右连接_06

 

SELECT <select_list> 
FROM Table_A A
LEFT JOIN Table_B B
ON A.Key = B.Key
WHERE B.Key IS NULL

 

6.RIGHT JOIN EXCLUDING INNER JOIN(右连接-内连接)

一张图看懂 SQL 的各种 join 用法_内连接_07

 

SELECT <select_list>
FROM Table_A A
RIGHT JOIN Table_B B
ON A.Key = B.Key
WHERE A.Key IS NULL

 

7.OUTER JOIN EXCLUDING INNER JOIN(外连接-内连接)

一张图看懂 SQL 的各种 join 用法_外连接_08

 

SELECT <select_list>
FROM Table_A A
FULL OUTER JOIN Table_B B
ON A.Key = B.Key
WHERE A.Key IS NULL OR B.Key IS NULL

 

 

一张图看懂 SQL 的各种 join 用法_右连接_09