SQL 집합 연산은 여러 질의의 결과 행을 합치거나 공통·차집합 부분을 구하는 기능이다. UNION, INTERSECT, EXCEPT가 대표적이다.
SQL |
|---|
SQL SELECT · SQL JOIN · SQL GROUP BY · SQL HAVING · SQL 공통 테이블 식 |
원리
각 질의의 열 수와 대응하는 타입이 호환되어야 한다. 기본적인 UNION은 중복을 제거하고 UNION ALL은 중복 행을 유지한다.
예시
올해 고객과 지난해 고객 목록을 UNION하면 양쪽에 속한 고객을 포함한 집합을 얻을 수 있다. 중복 제거 기준은 선택한 전체 열이다.
데이터베이스 내부 |
|---|
WAL · 체크포인트 · MVCC · 트랜잭션 격리 수준 · 읽기 커밋 |
데이터베이스 교착 상태 · 비관적 잠금 · 파티셔닝 · 시점 복구 · 데이터베이스 백업 |
주의할 점
UNION ALL을 사용한다고 입력 질의 순서대로 출력된다고 가정하지 않는다. 정렬이 필요하면 전체 결과에 ORDER BY를 적용한다.