第一个:内链接
- inner join
select * from a inner join b on a.id=b.id
- where a.id =b.id (这种用法非常见)
select * from a,b where a.id=b.id
第二种:
- 左连接 left join on.....,查询结果为左边的所有记录,右表无的记录显示null
- 右连接 right join on .....,查询结果为右边的所有记录,左表无的显示为null
如图:右连接班级表,班级中的有一个班级3,在成绩表中无班级3的记录,所以左表显示为null
左连接亦是如此的,如下图:
第三:接下来到union 和union all ,对两个结果进行并集操作,不同的是union all 并集操作时,不去掉重复的数据
- union对两个结果进行并集操作,选择班级id=1 和班级id 小于3的结果,并在一起显示;(没有重复的数据)
- union all 包含重复数据,方便看出结果,查询条件直接相同了,直接明了
实践出真知,多动手实操吧!
原文地址:https://www.cnblogs.com/cuitang/p/10597525.html
时间: 2024-10-10 04:15:24