728x90
집합연산자
- 두 테이블에 대한 집합연산 (합집합, 교집합 등)을 수행하는 연산자
- JOIN과의 차이점
- JOIN은 특정한 기준키를 가지고 두 테이블에 대한 집합 연산을 수행
- 집합연산자 : 기준키 없이 연산을 수행
- 스키마가 동일 해야한다 (같은 수의 칼럼을 가지고 칼럼의 각각의 데이터 타입이 같아야 한다)
- 반환되는 칼럼의 이름은 첫 번째 테이블을 따른다
UNION ALL
- 합집합 연산을 수행하지만 중복된 것들을 모두 포함해서 출력
- 단순 Concat 느낌
ex) (a,1), (a,2), (b,2), (c,3) UNION ALL (a,1) (b,2), (c,3)
-> (a,1), (a,2), (b,2), (c,3) (a,1) (b,2), (c,3)
UNION
- 합집합 연산을 수행하지만 중복은 하나만 포함
ex) (a,1), (a,2), (b,2), (c,3) UNION ALL (a,1) (b,2), (c,3)
-> (a,1), (a,2), (b,2), (c,3)
INTERSECT
교집합 연산을 수행
- 공통적으로 포함된 레코드만 포함 시킨다
MINUS (EXCEPT)
차집합 연산을 수행
- 왼쪽 테이블에서 두 테이블에 공통적으로 포함된 레코드들을 제외 시킨 결과를 반환
728x90
'IT Study > SQL' 카테고리의 다른 글
| [SQLD] 서브 쿼리(Subquery) 와 뷰(VIEW) (0) | 2026.03.03 |
|---|---|
| [SQLD] 기타 함수들 (DBMS제공 내장함수) (0) | 2026.02.26 |
| [SQLD] JOIN 함수 관련 총정리 (0) | 2026.02.24 |
| [SQLD] SQL 기본 및 활용 (관리 구문) (0) | 2025.11.11 |
| [SQLD] 데이터베이스 이상현상 및 정규화/반정규화 (0) | 2025.11.03 |