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

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

SELECT <select_list>
FROM Table_A A
LEFT JOIN Table_B B
ON A.Key = B.Key
如果B有条重复记录,A就会增加多条,因此要用如下方法解决:
SELECT <select_list>
FROM Table_A A
LEFT JOIN (SELECT <select_list/(sum(X),max(X))> FROM Table_B GROUP B.key) B
ON A.Key = B.Key
Right JOIN

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

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

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

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

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中INNER JOIN、LEFT JOIN、RIGHT JOIN、FULL OUTER JOIN等7种连接类型的使用方法,包括如何处理重复记录及排除特定条件下的连接,为数据库操作提供全面指南。

335

被折叠的 条评论
为什么被折叠?



