COUNT는 같은 행도 다르게 셉니다

차이는 데이터가 아니라
집계 전에 적용되는 규칙입니다

세 함수는 모두 같은 category 열에서 시작하지만, NULL을 빼는지와 중복을 합치는지가 달라집니다.

1행 전자
2행 전자
3행 식품
4행 NULL
5행 식품
집계 함수
먼저 적용되는 규칙
실제로 남는 대상
결과
COUNT(*)
필터 없음
전자 전자 식품 NULL 식품
5
COUNT(category)
NULL 제외
전자 전자 식품 식품 NULL 1개는 빠짐
4
COUNT(DISTINCT category)
NULL 제외 + 중복 합치기
전자 식품 전자 2개, 식품 2개는 각 1개로 계산
2