강의
GROUP BY & Aggregate
"GROUP BY"는 테이블의 레코드를 그룹핑하는 함수 입니다.
"Aggregate 함수"는 그룹핑한 필드에서 다양한 정보를 계산하는 함수들을 말합니다.
계산한 결과는 필드 이름(alias)를 지정하여 주는 것이 좋습니다.
- COUNT
- SUM
- AVG
- MIN
- MAX
- LISTAGG
CTAS
"CTAS"는 SELECT을 이용하여 테이블을 생성하는 방법 입니다.
기존의 테이블을 기반으로 데이터 분석에 기본이 되는 테이블을 사전에 생성할 수 있습니다.
DROP TABLE IF EXISTS new_table;
CREATE TABLE new_table AS
SELECT A_table
JOIN B_table
;
데이터 품질 확인 방법
- 중복된 레코드 체크하기
-- 전체 레코드 수
SELECT COUNT(1)
FROM table
;
-- 중복 제거 후 전체 레코드 수
SELECT COUNT(1)
FROM(
SELECT DISTINCT field
FROM table
)
;
-- CTE 사용
With ds AS(
SELECT DISTINCT field
FROM table
)
SELECT COUNT(1)
FROM ds
;
- 최근 데이터 존재 여부 체크하기(freshness)
SELECT MIN(ts), MAX(ts)
FROM table
;
- Primary key 유일성 체크하기
SELECT primary_key, COUNT(1)
FROM table
GROUP BY 1
ORDER BY 2 DESC
LIMIT1
;
- NULL 존재 비율 체크하기
SELECT
COUNT(CASE WHEN field is NULL THEN 1 END) AS field_null_count
FROM table
;
'데브코스 TIL > SQL' 카테고리의 다른 글
View & CTE (1) | 2024.01.05 |
---|---|
SQL을 이용한 데이터 분석 Day 5 트랜잭션과 기타 고급 SQL 문법 (0) | 2023.11.17 |
SQL을 이용한 데이터 분석 Day 4 JOIN 소개 (0) | 2023.11.16 |
SQL을 이용한 데이터 분석 Day 2 SELECT 배우기 (1) | 2023.11.14 |
SQL을 이용한 데이터 분석 Day 1 SQL과 데이터베이스 소개 (0) | 2023.11.13 |