前几篇文章中,我们查询的数据都是在一张表中进行操作的,而在实际工作中,我们经常需要在不同的表中查询数据,今天我们来学习从多张表中获取数据的方法--多表查询。
- 表的加法
- 表的联结
- 用SQL联结解决业务问题
- case 表达式
1.表的加法(union)
表的加法在SQL语句中用union表示,是将两个表的数据按行合并到一起。使用union语句时,重复的数据只会保留一个。若想要保留表中重复的行,则使用union all语句。
如何合并两个表?以之前的课程表(course)为 例。
重命名course1
打开表-修改course1数据:
加入0004课程和0005课程
合并后不保留重复值(union)结果:
如果需要保留全部重复值(union all):
2.表的联结
表和表之间是通过对应的列产生关系,这也是之前我们在设计表的时候设置的主键。其关系就是数据库中数据对应的匹配,将数据库中的表连接在一起,这种操作叫做联结(join)。
在之前的数据库school中,4张表有下面的联结关系: