提示
Hive SQL 教程 欢迎使用。提供建议、纠错、催更等加作者微信: gr99123(备注:sql )和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
SQL 语句中 JOIN 可以将两个(或者多个)表按时指定的关系链接点进行连接,然后进行处理,本页整理其处理逻辑。
SELECT <list3>
FROM
(SELECT <list1>
FROM T) AS t1
<LEFT / RIGHT> JOIN
(SELECT <list2>
FROM C) AS c1 ON t1.id = c1.id AND t1.name = c1.name
ON 为两个表的连接点。

CROSS JOIN 会让左右表排列组合,产生笛卡尔积,效果如图示:

| 连接方式 | 逻辑说明 |
|---|---|
| JOIN | 即 INNER JOIN |
| INNER JOIN | 将两个表公共都有的部分组成新表 |
| FULL JOIN | 包含左右两表的所有行, 对应左右表没有的都为 Null |
| LEFT JOIN | 左表的全集及右表有的值,无值则为 Null |
| RIGHT JOIN | 与 LEFT JOIN 相反 |
| CROSS JOIN | 左右表排列组合 |

在使用 left jion 时,on 和 where 条件的区别如下:
应用过程中需要注意的问题有:
更新时间:2021-08-22 23:17:23 标签:sql 数据库