版权声明:最终解释权归属Hern所有,恒! https://blog.csdn.net/qq_36761831/article/details/83317064
JOIN(连接)
JOIN 用于根据两个或多个表中的列之间的关系(这些表之间的共同字段),连接起来,从这些表中查询数据。
INNER JOIN(表中至少一个匹配)
在表中存在至少一个匹配时,INNER JOIN 关键字返回行。
注意:INNER JOIN 与 JOIN 是相同的。
语法
SELECT 列名称
FROM 表名称1
INNER JOIN 表名称2
ON 表名称1.列名称 = 表名称2.列名称;
或
SELECT 列名称
FROM 表名称1
JOIN 表名称2
ON 表名称1.列名称 = 表名称2.列名称;
关系图
LEFT JOIN(连接左表)
LEFT JOIN 关键字会从左表 (表1) 那里返回所有的行,即使在右表 (表2) 中没有匹配的行。
语法
SELECT 列名
FROM 表名1
LEFT JOIN 表名2
ON 表名1.列名 = 表名2.列名;
注意:在某些数据库中,LEFT JOIN 称为 LEFT OUTER JOIN。
关系图:
RIGHT JOIN(连接右表)
RIGHT JOIN 关键字从右表(表名2)返回所有的行,即使左表(表名1)中没有匹配。如果左表中没有匹配,则结果为 NULL。
语法
SELECT 列名
FROM 表名1
RIGHT JOIN 表名2
ON 表名1.列名 = 表名2.列名;
注意:在某些数据库中,RIGHT JOIN 称为 RIGHT OUTER JOIN。
关系图:
FULL OUTER JOIN(两表其中一个匹配)
FULL OUTER JOIN 关键字只要左表(表名1)和右表(表名2)其中一个表中存在匹配,则返回行。
FULL OUTER JOIN 关键字结合了 LEFT JOIN 和 RIGHT JOIN 的结果。
语法
SELECT 列名
FROM 表名1
FULL OUTER JOIN 表名2
ON 表名1.列名 = 表名2.列名;
关系图: