두 개 이상의 테이블에서 조인을 사용하지 않고
연관된 데이터를 조회하는 방법 중에 또 다른 방법이 있는데
그 방법이 바로 집합 연산자(Set Operator)를 사용하는 방법이다.
집합 연산자는 여러 개의 질의의 결과를 연결하여
하나로 결합하는 방식을 사용한다.
일반적으로 집합 연산자를 사용하는 상황은
서로 다른 테이블에서 유사한 형태의 결과를 반환하는 것을
하나의 결과로 합치고자 할 때와
동일 테이블에서 서로 다른 질의를 수행하여
결과를 합치고자 할 때 사용할 수 있다.
이외에도 튜닝관점에서 실행계획을 분리하고자 하는 목적으로도 사용할 수 있다.
-- 집합 연산자를 사용하여 만들어지는 SQL문의 형태
SELECT
COLUMN1,
COLUMN2,
…
FROM TABLE
SET OPERATOR -- 집합 연산자
SELECT
COLUMN1,
COLUMN2,
…
FROM TABLE
ORDER BY 1, 2 [ASC | DESC];
집합 연산자는 사용상의 제약조건을 만족한다면 어떤 형태의 SELECT문이라도 이용할 수 있다.
집합 연산자는 여러 개의 SELECT문을 연결하는 것에 지나지 않는다.
ORDER BY는 집합 연산을 적용한 최종 결과에 대한 정렬 처리이므로 가장 마지막 줄에 한번만 기술한다.
집합 연산자를 연습하기 위한 질문
답해보기