Oracle基础知识:集合运算
最新学讯:近期OCP认证正在报名中,因考试人员较多请尽快报名获取最近考试时间,报名费用请联系在线老师,甲骨文官方认证,报名从速!
我要咨询Oracle基础知识:集合运算,集合运算就是将两个或者多个结果集组合成为一个结果集。集合运算包括:
··INTERSECT(交集),返回两个查询共有的记录。
··UNION ALL(并集),返回各个查询的所有记录,包括重复记录。
··UNION(并集),返回各个查询的所有记录,不包括重复记录。
··MINUS(补集),返回第一个查询检索出的记录减去第二个查询检索出的记录之后剩余的记录。
当使用集合操作的时候,要注意:查询所返回的列数以及列的类型必须匹配,列名可以不同。
案例6:查询出dept表中哪个部门下没有员工。只需求出dept表中的部门号和emp表中的部门号的补集即可。
代码演示:求补运算
SQL> SELECT DEPTNO FROM DEPT
2 MINUS
3 SELECT DEPTNO FROM EMP; DEPTNO ------
40 |
前面学习过可以通过insert into …select把一个结果集插入到另一张结构相同的表中,因此可以使用union把若干条记录一次性插入到一张表中。
代码演示:用union插入多条数据
SQL> INSERT INTO DEPT
2 SELECT 50,'公关部','台湾'
FROM DUAL
3 UNION
4 SELECT 60,'研发部','西安'
FROM DUAL
5 UNION
6 SELECT 70,'培训部','西安'
FROM DUAL
7 / 3 rows inserted |