개발노트

UNION / INTERSECT / MINUS 본문

Programming/Database

UNION / INTERSECT / MINUS

dev? 2020. 4. 27. 18:59
반응형

1) 결과를 모아서 출력하기 - UNION / UNION ALL

UNION - 합집합 (중복처리O)
UNION ALL - 합집합 (중복처리X, 모든 값들을 보여줌)

SELECT [컬럼명, 컬럼명 ...]
FROM [테이블명]
WHERE [조건]
UNION
SELECT [컬럼명, 컬럼명 ...
FROM [테이블명]
WHERE [조건]

SELECT [컬럼명, 컬럼명 ...]
FROM [테이블명]
WHERE [조건]
UNION ALL
SELECT [컬럼명, 컬럼명 ...]
FROM [테이블명]
WHERE [조건]


EX)
SELECT DEPARTMENT_ID, SALARY
FROM EMPLOYEES
WHERE SALARY > 1000
AND DEPARTMENT_ID = 90
UNION / UNION ALL
SELECT DEPARTMENT_ID, SALARY
FROM EMPLOYEES
WHERE SALARY > 1000
AND DEPARTMENT_ID = 80;

 


2) 공통 데이터 찾기 - INTERSECT
두 SQL 문장의 실행 결과에서 공통부분(교집합)을 찾는 연산

SELECT [컬럼명A] 
FROM [테이블명] 
WHERE [조건B] 
INTERSECT 
SELECT [컬럼명A] 
FROM [테이블명] 
WHERE [조건B] 


EX)
SELECT SALARY
FROM EMPLOYEES
WHERE DEPARTMENT_ID >= 70
INTERSECT
SELECT SALARY
FROM EMPLOYEES
WHERE DEPARTMENT_ID < 70;

 

 


3) 특정 결과를 재외하기 - MINUS
큰 집합에서 작은 집합 빼는(차집합) 연산

/* 큰 집합 */
SELECT [컬럼명A]   
FROM [테이블명]   

MINUS 

/* 작은 집합 */
SELECT [컬럼명A]   
FROM [테이블명] 
WHERE [조건]; 



반응형

'Programming > Database' 카테고리의 다른 글

JDBC 드라이버 로딩 및 Connection 생성  (0) 2022.02.08
SQL 함수  (0) 2020.04.27
NVL 함수  (0) 2020.04.27
Join 정리  (0) 2020.04.27
DDL / DML / DCL - 쿼리의 종류  (0) 2020.04.27