어쩌다 보니 시리즈물
2024.01.29 - [언어] - AVG 안에 IF문 넣기
# Write your MySQL query statement below
select query_name,
round(avg(rating / position),2) quality,
# round(count(if(rating<3,1,null))/ count(*) * 100,2) poor_query_percentage
round(avg(if(rating<3,1,0)) * 100,2) poor_query_percentage
from Queries
where query_name is not null
group by query_name
count를 넣었을 때는 False인 경우 null로 처리해주어야 평균이 계산되었다. 0인 경우에는 100%가 되는 문제 발생..!!
0도 정수기 때문에 카운트가 되므로 원하는 결과를 얻을 수 없다
하지만 avg을 사용할 때는 null인 경우에는 계산할 수 없고 (null로 나누기 불가능), 0으로 넣어주어야 총합 (분모)에서 카운트가 되지 않게 되므로 원하는 결과를 얻을 수 이따!
'언어' 카테고리의 다른 글
past 30 days -> interval 29 day (0) | 2024.02.01 |
---|---|
컬럼마다 따로 놀 수 있다 (1) | 2024.01.30 |
AVG 안에 IF문 넣기 (1) | 2024.01.29 |
스택/큐 (1) | 2024.01.08 |
13주차 ~ (0) | 2023.12.29 |