SET Operator

  • 두 질의의 결과를 가지고 집합 연산

1. UNION

  • 여러 개의 SQL 문의 결과에 대한 합집합
  • 중복된 행은 하나의 행으로 출력
SELECT ename FROM emp
UNION
SELECT dname FROM dept;
## 결과 값
ENAME
----------------------------
ACCOUNTING
ADAMS
ALLEN
BLAKE
CLARK
FORD
JAMES
JONES
KING
MARTIN
MILLER
OPERATIONS
RESEARCH
SALES
SCOTT
SMITH
TURNER
WARD

2. UNION ALL

  • 두 개의 SQL 문의 결과에 대한 합집합
  • 중복된 행도 그대로 결과로 표시
SELECT ename FROM emp
UNION ALL
SELECT dname FROM dept;
## 결과 값
ENAME
----------------------------
SMITH
ALLEN
WARD
JONES
MARTIN
BLAKE
CLARK
SCOTT
KING
TURNER
ADAMS
JAMES
FORD
MILLER
ACCOUNTING
RESEARCH
SALES
OPERATIONS

3. INTERSECT

  • 두 개의 SQL 문의 결과에 대한 교집합
  • 중복된 행은 하나의 행으로 출력
SELECT ename FROM emp
INTERSECT
SELECT dname FROM dept;

4. MINUS

  • 앞의 SQL 문의 결과에서 뒤의 SQL 문의 결과에 대한 차집합
  • 중복된 행은 하나의 행으로 출력
  • ANSI 표준에서는 EXCEPT
SELECT ename FROM emp
MINUS
SELECT dname FROM dept;

###