반응형
SQL에서 자주 사용되는 CTE(Common Table Expression)를 활용한 간단한 쿼리 작성 방법에 대해 알아보겠습니다. 이를 통해 데이터를 DB 테이블에 직접 ingest 하지 않고 테이블을 사용할 수 있습니다. 데이터베이스에 데이터를 저장하지 않고 메모리에서 처리하기 때문에, 빠르게 결과를 얻을 수 있습니다.
첫 번째 예제는 컬럼이 하나인 임시 테이블을 만드는 경우입니다.
WITH brand_tbl(keyword) AS (
VALUES
'Nike',
'Adidas',
'Puma',
'Under Armour',
'New Balance'
)
select
keyword
from
brand_tbl
위 쿼리는 'brand_tbl'이라는 임시 테이블을 생성하고, 여기에 스포츠 브랜드 이름을 추가했습니다. 이렇게 임시 테이블을 만들고 다른 테이블들과 조인하면 됩니다.
두 번째 예제는 컬럼이 두 개 이상인 임시 테이블을 만드는 경우입니다.
with account(employee_name, department) as (
values
('John Smith', 'Development'),
('Jane Doe', 'Design'),
('Michael Johnson', 'Marketing')
)
select
employee_name,
department
from
account
위 쿼리는 'account'라는 임시 테이블을 생성하고, 여기에 직원 이름과 부서 정보를 추가했습니다. 첫 번째 쿼리와는 format이 약간 다릅니다. values 아래에 값들이 들어가고 앞 뒤에 괄호를 추가해 줍니다.
CTE를 사용하면 복잡한 쿼리를 단순화하고 가독성을 높일 뿐만 아니라, 빠르게 결과를 얻고 리소스를 효율적으로 사용할 수 있습니다. SQL 작성에 있어서 CTE를 적극 활용하시면 더욱 효과적인 데이터 분석을 진행할 수 있을 것입니다.
반응형
'Skills > SQL' 카테고리의 다른 글
SQL order by 특정 조건으로 정렬하기 (2) | 2023.03.18 |
---|---|
SQL LIKE 대신 정규식 사용한 검색 방법: sql multiple like (0) | 2023.03.16 |
SQL에서 Roll up 함수 활용하기: 계층적 데이터 집계 방법 (0) | 2023.03.14 |
제품 주문 데이터를 활용한 커버리지 비율 분석 (2) | 2023.03.13 |
SQL을 활용한 구매 전환율 계산 (0) | 2023.03.12 |