内连接(INNER JOIN)
SELECT *(想要展现出来的列)FROM table01 t1(t1代表简写)
(INNER可写可省略)JOIN table02 t2ON t1.column_n = t2.column_m
跨数据库链接
在JOIN的数据表前面加上数据库名称和一个dotJOIN sql_a.table_n
自连接
FROM table_a aJOIN table_a aON a.employee = a,manger
多表连接
复合连接条件
隐式连接
FROM table_a aJOIN table_b bON a.column_n = b.column_m
等价于FROM a,bWHERE a.column_n = b.column_m(隐式连接)
注意不能忘记WHERE条件,不然会数据爆炸,即笛卡尔积
外连接
当遇到连接两个表的时候,若某个列表中存在NULL,会导致合并后的表格后部分数据不显示。
为解决该问题,使用外连接,即加入关键词LEFT,RIGHTFROM table_a**LEFT(或RIGHT)**JOIN table_bON statement
最总显示的结果以(RIGHT或LEFT)代表的一边为主
为代码显示美观简洁,将显示结果一边作为LEFT
USING子句
FROM aJOIN bon a.column_n = b.column_n
等价于FROMJOIN**USING **(column_n)
注意两张表必须有相同的列名称
自然连接
FROM a**NATURE JOIN** b
显示什么结果全看引擎,很危险,我们操控不了结果
交叉连接ACROSS JOIN
联合Unoin
连接列数相同的表进行上下连接FROMSELECTWHERE**UNOIN**FROMSELECTWHERE
……
