Language/SQL

[SQL] 집합연산자(UNION, UNION ALL, INTERSECT, EXCEPT)

eunzae 2022. 12. 15. 13:43

집합연산자

- 두개 이상의 테이블에서 조인을 사용하지 않고 연관된 데이터를 조회하는 방법 중 하나.

- 테이블에서 SELECT한 컬럼 수와 각 컬럼의 데이터 타입이 테이블 간 상호 호환 가능해야 한다.

 

UNION , UNION ALL: 여러 SQL 쿼리를 하나로 만들어주는(병합하는) 쿼리문 → 합집합

UNION

중복 데이터를 제거하여 여러 테이블을 병합

UNION ALL

중복 데이터를 제거하지 않고 여러 테이블을 병합

 

 

INTERSECT: 여러 SQL 쿼리에 대해 겹치는 데이터를 추출하는 연산 → 교집합

INTERSECT

중복 데이터를 제거하고 겹치는 데이터를 출력

 

 

EXCEPT: 여러 SQL 쿼리에 대해 겹치는 데이터를 첫번째 테이블에서 제외하고 추출하는 연산 → 차집합

EXCEPT

첫번째 테이블에서 겹치는 데이터를 제외하고 출력