目录
前期准备
学生表中:江雪,姜超没有班级
班级表中:Html01和Html02没有学生
内连接inner join
可以查询满足一一对应关系的数据;例如这个学生有所属的班级,这个班级有所属的学生,这样的数据满足一一对应的关系可以使用内连接查询出来
语法
select ... from 表名1 inner join 表名2 on 表名1.列名=表名2.列名 where 筛选条件;
外连接
可以查询不满足一一对应关系的数据;例如有的员工没有所属部门,有的部门没有员工,这样的数据不满足一一对应的关系
左外连接left outer join
我们用LEFT OUTER JOIN作为分界线,students表就是左表,左外连接可以把左表中不满足对应关系的数据查询出来。outer可以省略
左表的位置是相对的,我们也可以把classes表当做左表
语法
select ... from 表名1 left outer join 表名2 on 表名1.列名=表名2.列名 where 筛选条件;
select * from students left outer join classes on students.cid=classes.class_id;
右外连接right outer join
用RIGHT JOIN作为分界线,classes表是右表;右外连接可以把右表中不满足对应关系的数据查询出来。outer可以省略
右表的位置是相对的,我们也可以把classes表当做右表
语法
select ... from 表名1 right outer join 表名2 on 表名1.列名=表名2.列名 where 筛选条件;