728x90
집합 연산자
- SELECT 문 결과를 하나의 집합으로 간주, 그 집합에 대한 합집합, 교집합, 차집합 연산
- SELCT 문과 SELECT 문 사이에 집합 연산자 정의
- 두 집합의 컬럼이 동일하게 구성되어야 함(각 컬럼의 데이터 타입과 순서 일치 필요)
- 전체 집합의 데이터 타입과 컬럼명은 첫번째 집합에 의해 결정됨
# 집합 연산자 사용 시 주의 사항
1. 두 집합의 컬럼 수 일치
2. 두 집합의 컬럼 순서 일치
3. 두 집합의 각 컬럼의 데이터 타입 일치
4. 각 컬럼의 사이즈는 달라도 됨
합집합
- 두 집합의 총 합(전체) 출력
- UNION 과 UNION ALL 사용 가능
1) UNION
- 중복된 데이터는 한 번만 출력
- 중복된 데이터를 제거하기 위해 내부적으로 정렬 수행
- 중복된 데이터가 없을 경우는 UNION 사용 대신 UNION ALL 사용(불필요한 정렬 발생할 수 있으므로)
2) UNION ALL
- 중복된 데이터도 전체 출력
교집합
- 두 집합 사이에 INTERSECT
- 두 집합의 교집합(공통으로 있는 행) 출력
차집합
- 두 집합 사이에 MINUS 전달
- 두 집합의 차집합(한 쪽 집합에만 존재하는 행) 출력
- A-B와 B-A는 다름 집합의 순서 주의
728x90
'데이터베이스(DB) > SQLD' 카테고리의 다른 글
[SQLD 2-2-4] SQL 활용 - 윈도우 함수 (30) | 2024.06.12 |
---|---|
[SQLD 2-2-3] SQL 활용 - 그룹 함수 (37) | 2024.05.29 |
[SQLD 2-2-1] SQL 활용 - 서브쿼리 (47) | 2024.05.23 |
[SQLD 2-1-8] SQL 기본 - 표준 조인 (38) | 2024.05.23 |
[SQLD 2-1-7] SQL 기본 - 조인 (41) | 2024.05.20 |