데이터분석 TIL

TIL 5일차 -SQL로 업무시간 단축하기

제 피 2025. 10. 24. 16:25

TIL 5일차 — 데이터 품질 관리와 고급 SQL 실습

오늘은 SQL로 결측값, 이상값, 그리고 데이터 요약을 처리하는 방법을 배웠다.
단순히 데이터를 조회하는 수준을 넘어, 데이터의 신뢰성과 분석 효율을 높이는 기술들을 실습했다.

Pivot Table, 윈도우 함수(Window Function), 포맷 함수까지 배우며
SQL이 단순한 질의 언어가 아니라 데이터 분석의 핵심 도구임을 다시 느꼈다.

오늘 학습한 내용과 깨달음
1. 결측값과 이상값 처리 (NULL Handling & Data Cleaning)

조회한 데이터에 값이 없거나 비정상적인 데이터가 있을 때
IFNULL, COALESCE, CASE WHEN 등을 활용해 안전하게 처리할 수 있었다.
이전에는 단순히 NULL을 무시했지만, 이제는 데이터 품질 관리의 중요성을 이해A했다.

2. Pivot Table 만들기

SQL에서도 GROUP BY와 CASE문을 활용해
엑셀처럼 데이터를 요약하고 재구성할 수 있었다.
Pivot Table을 직접 구현해보니, SQL이 단순한 집계 그 이상임을 체감했다.

3. 윈도우 함수 (Window Function - RANK, SUM)

RANK(), ROW_NUMBER(), SUM() OVER() 등을 활용해
순위 계산과 누적합 등을 간단히 구현할 수 있었다.
이전에는 복잡한 서브쿼리로 구현했던 기능들을 한 줄로 처리할 수 있어
SQL의 효율성과 확장성에 감탄했다.

4. 포맷 함수 (Format Functions)

날짜와 조건을 한 번에 처리하며
출력 형식을 다듬는 방법을 배웠다.
데이터를 보기 좋게 만드는 것도 분석 과정의 중요한 일부임을 느꼈다.

오늘의 문제와 해결

Pivot Table 구현 시 CASE 조건이 중복되어 결과가 꼬이는 문제가 있었다.
각 조건문에 별칭을 명확히 지정하고, 그룹 기준을 재정리하며 해결했다.

또 윈도우 함수를 사용할 때 OVER() 안의 PARTITION BY 범위를 잘못 지정해
누적값이 이상하게 계산되는 오류가 있었지만,
공식 문서를 참고해 올바른 구문 구조를 익혔다.

오늘의 회고 (WIL: What I Learned)

데이터 분석은 정확한 데이터 정리에서 시작된다는 걸 깨달았다.
결측값, 이상값, 포맷, 요약 — 이 모든 과정이 데이터의 품질을 결정한다.

오늘 배운 SQL 함수들은 단순한 문법이 아니라,
데이터를 신뢰할 수 있는 형태로 다듬는 사고방식을 익히는 훈련이었다.

SQL로 단순 조회를 넘어서,
데이터를 관리하고 설명하는 언어로 활용할 수 있게 된 하루였다.