12.3.2 월평균 미세먼지 현황
이번에는 미세먼지 기준 테이블(fine_dust_standard)과 조인해 월평균 미세먼지 상태를 조회해 봅시다. fine_dust_standard 테이블에는 WHO 기준의 미세먼지와 초미세먼지 농도에 대한 기준 값(시작 값과 끝 값)이 들어 있습니다. 따라서 fine_dust와 fine_dust_standard 테이블을 조인하면 월평균에 대한 미세먼지 상태를 알 수 있습니다.
쿼리 12-15 월평균 미세먼지 상태
SELECT a.months
,a.pm10_avg
,( SELECT b.std_name
FROM fine_dust_standard b
WHERE b.org_name = 'WHO'
AND a.pm10_avg BETWEEN b.pm10_start
AND b.pm10_end
) "미세먼지 상태"
,a.pm25_avg
,( SELECT b.std_name
FROM fine_dust_standard b
WHERE b.org_name = 'WHO'
AND a.pm25_avg BETWEEN b.pm25_start
AND b.pm25_end
) "초미세먼지 상태"
FROM ( -- 월평균 미세먼지 농도 서브쿼리
SELECT TO_CHAR(a.mea_date, 'YYYY-MM') months
,ROUND(AVG(a.pm10),0) pm10_avg
,ROUND(AVG(a.pm25),0) pm25_avg
FROM fine_dust a
WHERE a.pm10 > 0
AND a.pm25 > 0
GROUP BY TO_CHAR(mea_date, 'YYYY-MM')
) a
ORDER BY 1;