两个表的数据加在一起。union和union all的区别

这里union和union all 的区别是:第一个是显示去重后的,第二个是显示所有的。

表    a

id name
1
2

表    b

sid sname
1
2 哈哈
select * from (
select a.id,a.name from a
union all
select b.sid,b.sname from b)

id name
1
2
1
2 哈哈

这里列名取表a的,其中两个表对应的类型要一样。如:a.id和b.sid都是NUMBER类型。a.name和b.sname都是VARCHER2类型。

这里使用union all,将所有的数据全部显示。


select * from (
select a.id,a.name from a
union
select b.sid,b.sname from b)

id name
1
2
2 哈哈
这里用union,两个表中的(id:1,name:啊)的重复的去掉了一个。两个id一样的,但name不一样的没有去掉,说明union去重是把所有数据看成一个整体,其中有一个数据不同就不会去重。

猜你喜欢

转载自blog.csdn.net/weixin_40620337/article/details/80936078