평균을 구할때 NULL을 포함시키면 안된다.
평균을 구하고자 하는 컬럼에 값이 0이 있는 경우와 NULL이 있는 경우는 완전히 다르다. 
평균은 SUM/COUNT 로구해지는데, NULL인 경우에는 COUNT에서 제외가 되므로 나누는 수가 달라지게된다. 

 학생1    학생2         학생3       학생4        학생5
 NULL     40             50           60           100

레코드가 다음과 같을때  AVG함수를 사용한다면  
50+40+60+100 / 4 = 62.5  (NULL인 컬럼은 나누는수에서 제외된다.)

학생1    학생2         학생3     학생4        학생5
 0         40             50           60           100
 
0 + 40 +50+60+100 / 5 = 50 (정상적인 경우 평균 값) 

'DataBase' 카테고리의 다른 글

오라클 옵티마이저란 ?  (0) 2019.01.09
MySQL SUM 함수시 NULL 처리 0으로  (0) 2018.10.26
SQL 쿼리 잘짜는 방법  (0) 2018.10.10
오라클 문자열 합치기 LISTAGG  (0) 2015.12.17
소계와 합계 구하는 방법 (1)  (0) 2015.12.17
블로그 이미지

클라인STR

,