공통 테이블 표현식(common table expression, CTE)은 데이터베이스에 실제로 테이블을 생성하는 것이 아니라 쿼리 실행 결과를 테이블처럼 활용하기 위한 논리적인 테이블을 생성한다.
WITH [테이블명] (열 1, 열 2, ...) AS (
<SELECT 문>
) SELECT [열] FROM [테이블명];
<SELECT 문>과 함께 UNION, UNION ALL, INTERSECT, EXCEPT를 사용할 수도 있다.
CTE 결합
UNION과 UNION ALL로 여러 CTE를 결합할 수 있다. UNION 연산자는 여러 쿼리의 결과를 하나의 데이터 집합으로 결합니다. UNION ALL은 UNION과 유사하지만 중복 데이터를 유지한다.
참고 문헌
- Do it! MySQL로 배우는 SQL 입문