数据库学习笔记(4)-----union,union all的区别与用法(2019/2/28)
有两张表,分别为'student'和'people'
student:
name | age |
---|---|
Marry | 14 |
Chat | 15 |
Jock | 14 |
Jerry | 13 |
Ketty | 12 |
people:
name | age |
---|---|
Marry | 14 |
Sunk | 15 |
Metty | 14 |
如果我们想将这两张表使用’union’进行上下合并查询显示,则:
select * from student s union select * from people;
那么,我们查询的结果为:
name | age |
---|---|
Marry | 14 |
Chat | 15 |
Jock | 14 |
Jerry | 13 |
Ketty | 12 |
Sunk | 15 |
Metty | 14 |
而当我们使用’union all’的时候,则:
select * from student s union all select * from people;
name | age |
---|---|
Marry | 14 |
Chat | 15 |
Jock | 14 |
Jerry | 13 |
Ketty | 12 |
Marry | 14 |
Sunk | 15 |
Metty | 14 |
此表比上表多一条’Marry 14’的信息,是因为’union’在对表进行连接的时候,会自动去除重复的值,而’union all’则会将所有数据进行连接。