반응형
사용목적
조회한 다수의 SELECT 문을 하나로 합치고 싶을때
UNION
- 두개 이상의 테이블의 결합을 나타냄
- 중복되는 행은 제거하고 정렬되어 출력됨
SELECT * FROM a
UNION
SELECT * FROM b
- 컬럼이 두개 이상이면 묶음으로 확인해서 중복제거함
즉, 행의 데이터가 다 같아야지 중복제거 - 컬럼명은 첫번째로 명시된 컬럼명을 따라감
UNION ALL
UNION과 같으며 중복을 제거하지 않음, 정렬되어 출력안됨
SELECT * FROM a
UNION ALL
SELECT * FROM b
- 정렬을 할 시 마지막으로 명시한 SELECT문의 다음에 ORDER BY를 해야한다.
사용시 주의점
- 컬럼의 타입과 순서 그리고 컬럼의 개수가 동일해야한다.
- ORDER BY 사용시 첫번째로 명시된 SELECT문의 컬럼명 혹은 ALIAS로 작성해야한다.
반응형