Oracle union intersect minus 复习

来源:互联网 发布:发膜一周用几次知乎 编辑:程序博客网 时间:2024/06/05 14:27

两个子查询进行集合运行, 条件就是两个查询的字段个数一致,类型一致,字段名可以不同。

 

SQL> select * from ta;

        ID NAME
---------- --------------------
         1 gorey
         2 gorey2
SQL> select * from tb;

        ID ADDRESS
---------- --------------------
         2 g2
         3 g3
         2 gorey2
SQL> select * from ta union select * from tb;

        ID NAME
---------- --------------------
         1 gorey
         2 g2
         2 gorey2
         3 g3

■union小结: 左集合+右集合, 但是有重复行的情况只显示一行。相当于有DISTINCT

 

SQL> select * from ta intersect select * from tb;

        ID NAME
---------- --------------------
         2 gorey2

■intersect 小结: 没有多话,取交集

 

SQL> select * from ta minus select * from tb;

        ID NAME
---------- --------------------
         1 gorey

■minus 小结: 左集 - 左右集的交集。

 

SQL> select * from ta union all select * from tb;

        ID NAME
---------- --------------------
         1 gorey
         2 gorey2
         2 g2
         3 g3
         2 gorey2
■union all 小结: 注意,这个和union 不同, all加上的话,意思是union里的重复行不省略。会全部显示。

原创粉丝点击