728x90
반응형
mysql에서 group by 를 통해 평균을 구해야할 일이 생겼다. 문제는 원하지 않은 값, 즉 0 이 들어와서 평균을 깎아먹고 있었던 것이다.
예를들어서 테이블을 통해 살펴보자
이 테이블에서 height 즉 키는 다 있으므로 6명의 평균을 다 구하고 싶었고, weight는 있는 사람들 것에 대한 평균만 내고 싶었다.
하지만 이렇게 weight를 적지 않은 사람들의 몸무게를 0으로 두고 평균을 냈을 때
다음과 같은 결과가 나온다. 즉 평균 키는 구해졌지만 평균 몸무게가 0으로 적은 사람들 때문에 원하지 않는 평균 무게가 나왔다.
이를 방지하기 위해서는 몸무게를 적지 않은 사람들의 몸무게를 0 이 아닌 null 로 변경해주면 된다.
이렇게 null로 두고 평균을 구하면 키는 6명의 평균키, 몸무게는 4명의 평균 몸무게가 나오게 된다.
728x90
반응형
'Data > DB' 카테고리의 다른 글
[DATABASE] OLAP vs OLTP | LIM (0) | 2022.12.25 |
---|---|
[MySQL] View 란? | LIM (0) | 2022.12.10 |
[MySQL] Transaction의 모든 것 | LIM (0) | 2022.05.21 |
Pandas DataFrame to SQL Table (0) | 2021.01.25 |
[pymysql] python에서 mysql 사용 (0) | 2021.01.21 |
댓글