주간 리포트에서 NULL이 만드는 함정
빈칸을 0으로 보면 편하지만, 평균과 참여율이 조용히 틀어집니다.
설문 점수, 배송 소요 시간, 만족도처럼 “아직 없는 값”이 섞인 주간 표를 SQL로 옮길 때 가장 흔한 실수는 NULL을 0으로 바꿔 버리는 것입니다. 합계는 그럴듯해 보여도 평균은 내려가고, “응답한 사람” 기준 지표는 분모가 달라집니다.
집계 함수의 기본 태도
AVG와 SUM은 기본적으로 NULL을 건너뜁니다. COUNT(컬럼)도 NULL을 세지 않습니다. COUNT(*)만 행 자체를 셉니다. 이 차이를 모른 채 COALESCE(score, 0)를 습관처럼 쓰면, 미응답이 0점으로 들어가 평균이 왜곡됩니다.
리포트에 적을 한 줄
지표 아래에 “미응답 N건 제외” 또는 “미응답을 0으로 간주”를 명시하세요. Aesabla 실습 DB에는 일부러 NULL이 섞인 주간 테이블을 넣어, 두 해석을 나란히 비교하게 합니다.
빈칸을 어떻게 볼지는 데이터 팀만의 문제가 아닙니다. 숫자를 발표하는 사람이 선택해야 할 정책입니다.