大纲
- 表的加法
- 表的联结
- 联结应用案例
- case表达式
一,表的加法
加法(union)
-- 不保留重复行
select 课程号,课程名称
from course
union
select 课程号,课程名称
from course1
![a5007bf063f7e4a4cb3486e441c7b3c2.png](https://i-blog.csdnimg.cn/blog_migrate/bf495adfa83f80b56a78e8b0a0084db9.jpeg)
-- 保留重复行
select 课程号,课程名称
from course
union all
select 课程号,课程名称
from course;
![5cea1d0624d892ab40008b60de0bff5a.png](https://i-blog.csdnimg.cn/blog_migrate/e82f7d24816d65b2c112e5422ebd8aed.jpeg)
二,表的联结
- 联结逻辑
4张表联结关系图
![27106d76fc2fe787952f3aee919530ba.png](https://i-blog.csdnimg.cn/blog_migrate/bd3501875cdefbaea44245405b024813.jpeg)
- 联结种类
1.交叉联结
2.内联结
3.左联结
4.右联结
5.全联结
- 交叉联结(cross join)
把一个表的每一行和另一个表的每一行两两联结在一起
![8027a7035945f49771685085dc3b6b8b.png](https://i-blog.csdnimg.cn/blog_migrate/86798c88e67e849fcb99a1051a6d0058.jpeg)
- 内联结(inner join)
查找出同时存在于两张表里的数据
select a.姓名,a.学号,b.课程号
from student as a inner join score as b
on a.学号=b.学号