oracle(22)_SQL_Union 和 Union All 的用法
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;
如有错误,欢迎指正!