[DW] GROUP BY와 CTAS

정기홍·2024년 4월 24일

DW

목록 보기
3/5

Group BY & Aggregate 함수

Group BY란 테이블의 레코드를 그룹핑하여 그룹별로 다양한 정보를 계산하는 명령어입니다.
보통 Aggregate 함수와 같이 사용되는데 이는 두 단계로 이뤄집니다.

  • 먼저 그룹핑을 할 필드를 결정 (하나 이상의 필드가 될 수 있음)
    • GROUP BY로 지정 (필드 이름을 사용하거나 필드 일련번호를 사용)
  • 다음 그룹별로 계산할 내용을 결정
    • 여기서 Aggregate함수를 사용
    • COUNT, SUM, AVG, MIN, MAX, LISTAGG, …
      • 보통 필드 이름을 지정하는 것이 일반적 (alias)

CTAS와 CTE

CTAS

CTAS(CREATE TABLE AS SELECT)란 SELECT를 가지고 테이블 생성하는 방법입니다.
자주 조인하는 테이블들이 있다면 이를 CTAS 를 사용해서 조인해두면 편리해집니다.
CREATE TABLE new_table AS 
SELECT * 
FROM old_table 
WHERE condition;

CTE

CTE(Common Table Expression)란 WITH 절에 정의된 명명된 하위 쿼리로 공통 테이블 표현식이라고도 불립니다.
WITH cte1 AS (SELECT ... FROM ...),
     cte2 AS (SELECT ... FROM ...),
      ...
SELECT ...
	FROM cte1, cte2, ...
WHERE ...

항상 시도해봐야하는 데이터 품질 확인 방법들

  • 중복된 레코드들 체크하기
  • 최근 데이터의 존재 여부 체크하기 (freshness)
  • Primary key uniqueness가 지켜지는지 체크하기
  • 값이 비어있는 컬럼들이 있는지 체크하기
profile
늘 새로운걸 도전하는 의지

0개의 댓글