본문 바로가기
SQL

연도 별 평균 미세먼지 농도 조회하기

by 익명의 문과 개발자 2024. 10. 10.
728x90
728x90

 

좌로 보나 우로보나,, 조회값도 똑같은데 틀렸다고만 나와 답답해서 검색을 했다..

그 결과 늘 주어지는 칼럼의 타입이 DATETIME이었어서

DATE_FORMAT () 함수를 통해 날짜를 알아왔었는데

이번 문제는 DATE이기 때문에 SELECT 할 때, DATE_FORMAT() 함수가 아닌

YEAR() 함수를 사용했어야 했다..

 

틀린 코드를 먼저 보자.

 

SELECT DATE_FORMAT(YM, '%Y') AS YEAR, ROUND(AVG(PM_VAL1), 3) AS 'PM10', ROUND(AVG(PM_VAL2), 3) AS 'PM2.5'
FROM AIR_POLLUTION
WHERE LOCATION2 = '수원'
GROUP BY YEAR
ORDER BY YEAR;

 

DATE_FORMAT() 함수는 해당 부분을 문자열로 반환하고

YEAR() 함수는 정수로 반환한다고 한다.

 

이제 올바른 코드를 보자.

SELECT YEAR(YM) AS YEAR, ROUND(AVG(PM_VAL1), 2) AS `PM10`, ROUND(AVG(PM_VAL2), 2) AS `PM2.5`
FROM AIR_POLLUTION
WHERE LOCATION2 = '수원'
GROUP BY YEAR
ORDER BY YEAR;

 

혼자 해결하고 싶어 한참을 헤맸는데 ,,, 간단한 문제였다.

해결 !

728x90