当前位置:   article > 正文

ORACLE数据库 —— 集合运算_oracle集合运算

oracle集合运算

1.定义:在多个查询结果之间的查询操作

2.并集:将两个查询的查询结果合并在一起

A UNION B ==>ACB

A UNION ALL B ==> ACCB

(1)union:去重,结果以第一列升序排列

SELECT deptno,DNAME FROM DEPT
UNION
SELECT DEPTNO,ENAME FROM EMP;

 (2)union all:不去重,不排序

SELECT DEPTNO,DNAME FROM DEPT
UNION ALL
SELECT DEPTNO,ENAME FROM EMP;

 注意:(1)集合操作时,必须要保证数据类型和个数保持一致

SELECT DNAME,DEPTNO FROM DEPT
UNION
SELECT DEPTNO,ENAME,SAL FROM EMP;

在第一个查询中有2个字段,数据类型分别为varchar2和number类型,而在第二个查询中有三个字段,数据类型分别为number,varchar2和number类型,所以最后的结果只会是报错。

 (2)最终的字段名以第一个查询查询结果为主。

3.交集:将两个查询的查询结果共有的数据取出,intersect

 A INTERSECT B ==>C

SELECT JOB FROM EMP WHERE DEPTNO=10
INTERSECT
SELECT JOB FROM EMP WHERE DEPTNO=20;

 4.差集:返回在第一个查询结果中出现而不在第二个查询查询结果中出现的数据

 

A MINUS B ==>A-C

SELECT JOB FROM EMP WHERE DEPTNO=10
MINUS
SELECT JOB FROM EMP WHERE DEPTNO=30

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Li_阴宅/article/detail/793071
推荐阅读
相关标签
  

闽ICP备14008679号