본문 바로가기
데이터관련공부/SQL

CTE (테이블에 이름 붙이기)

by 자유롭고 싶은 키털트 2024. 7. 27.

 

CTE (Common Table Expression) 는 계산한 테이블에 이름을 별도로 붙이는 방법이다. 

 : CTE 를 활용하면 서브 쿼리의 중첩으로 인한 복잡함이 완화된다. 

 : 보통 분석가들은 테이블 생성 권한이 없기 때문에 CTE 를 활용하면 좋다

with 테이블명 AS (
)
Select * from 테이블명

 

 

보통 테이블을 여러 개 만들 경우 하기와 같은 형태로 사용된다 테이블명1 과 테이블명2 사이에 쉼표(,) 가 반드시 들어간다. 

with 
테이블명1 AS (
...
),
테이블명2 AS (
...
)
Select * from 테이블명
with table1 as(
          select 'candy' as product, 1 as product_code, 200 as quantity
union all select 'chocolate' as product, 2 as product_code, 300 as quantity
union all select 'fruit' as product, 5 as product_code, 1000 as quantity
),
table2 as(
  select sum(quantity) as total_qty
  from table1
)
select *
from table2
cs

 

반응형