2 集合运算
|
举例子
- 这里了解union就可以,intersect和minus原理一样
Union 注意的问题: 1.参与运算的各个集合必须列数相同且类型一致 2. 采用第一个集合作为最后的表头 3. order by 永远在最后 4. 括号 | 查询10和20号部门的员工 SQL> select * from emp where deptno in (10,20); SQL> select * from emp where deptno=10 or deptno=20; 上面的代码等价于下面的代码 select * from emp where deptno=10 加上 select * from emp where deptno=20 |
SQL> select deptno,job,sum(sal) from emp group by rollup(deptno,job); 等价 select deptno,job,sum(sal) from emp group by deptno,job + select deptno,sum(sal) from emp group by deptno + select sum(sal) from emp 等价 select deptno,job,sum(sal) from emp group by deptno,job union select deptno,to_char(null),sum(sal) from emp group by deptno union select to_number(null),to_char(null),sum(sal) from emp | |
开发中少用union,性能比较差 Set timing on/off 可以查时间 |