oracle(22)_SQL_Union 和 Union All 的用法

版权声明:如需转载,请注明出处 https://blog.csdn.net/qq_36260974/article/details/88785398

SQL

子查询

Union 和 Union All 的用法

Union:对两个结果集进行并集操作,不包括重复行。

  • 范例:工资大于 1000 和大于2000 的员工做并集
  • 示例图:
    在这里插入图片描述

Union All:对两个结果集进行并集操作,包括重复行。

  • 范例:工资大于 1000 和大于2000 的员工做并集
  • 示例图:
    在这里插入图片描述

合并需要注意的事项

  • 示例图:
    在这里插入图片描述

以上操作完整源码:

--union把两个集合做并集的时候会把重复的数据去掉留一份
select * from emp t where t.sal > 1000
union
select * from emp t where t.sal > 2000;

--union把两个集合做并集的时候会不去重
select * from emp t where t.sal > 1000
union all
select * from emp t where t.sal > 2000;

--并集时要合并的列类型必须一致,列名可以不一致, 两个合并的并集的列数必须一致
select t.empno, t.ename, t.job from emp t where t.empno = 7782
union 
select t.empno, t.job, t.ename from emp t where t.empno = 7566;

如有错误,欢迎指正!

猜你喜欢

转载自blog.csdn.net/qq_36260974/article/details/88785398