<?xml version="1.0" encoding="UTF-8"?>
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<mapper namespace="com.moral.mapper.QualityDailyMapper">
|
<!--
|
<select id="getQualityCountDayByRegion" resultType="map">
|
SELECT
|
COUNT( * ) count
|
FROM
|
quality_daily
|
<where>
|
time >= #{start}
|
AND time < #{end}
|
AND city_code = #{cityCode}
|
AND quality < 3
|
</where>
|
</select>
|
-->
|
|
<select id="getQualityCountDayByRegion" resultType="map">
|
SELECT COUNT(*) count
|
FROM (
|
SELECT
|
MAX(CASE aqi_json ->> '$.quality'
|
WHEN "优" THEN 1
|
WHEN "良" THEN 2
|
WHEN "轻度污染" THEN 3
|
WHEN "中度污染" THEN 4
|
WHEN "重度污染" THEN 5
|
WHEN "严重污染" THEN 6
|
ELSE 0 END
|
) AS quality
|
FROM
|
`hangzhou_aqi`
|
<where>
|
time >= #{start}
|
AND time < #{end}
|
AND city_code = #{cityCode}
|
</where>
|
GROUP BY DATE_FORMAT( time, '%Y-%m-%d' )
|
) t
|
<where>
|
t.quality < 3
|
</where>
|
</select>
|
</mapper>
|