内连接
相当于查询A、B交集部分数据
隐式内连接
select 字段列表 from 表1,表2 where 条件……;
# 内连接
select emp.name, dept.name from emp, dept where emp.dept_id = dept.id;
显式内连接
select 字段列表 from 表1 [inner] join 表2 on 连接条件……;
select emp.name, dept.name from emp inner join dept on emp.dept_id = dept.id;
外连接
左外连接
查询左表所有数据,以及两张表交集部分数据
# 会查询左边表1的shu
select 字段列表 from 表1 left [outer] join 表2 on 条件……;
-- 左
select emp.name, dept.name from emp left outer join dept on emp.dept_id = dept.id;
右外连接
查询右表所有数据,以及两张表交集部分数据
select 字段列表 from 表1 right [outer] join 表2 on 条件……;
-- 右
select dept.*, emp.* from emp right join dept on emp.dept_id = dept.id;
自连接
当前表与自身的连接查询,自连接必须使用表别名
select 字段列表 from 表A 别名A join 表A 别名B on 条件……;