于紫祥_1901
2020-12-14 782e84d68779471c0640584678d4c4df3afa80a2
src/main/resources/mapper/HistoryMapper.xml
@@ -301,10 +301,21 @@
        limit 0,1
    </select>
    <select id="getDailyAvgData" resultType="java.util.Map">
        SELECT  AVG(hd.json->"$.e1[0]") as `PM2_5`,AVG(hd.json->"$.e2[0]") as 'PM10',AVG(hd.json->"$.e10[0]") as 'CO',
            AVG(hd.json->"$.e11[0]") as 'SO2',AVG(hd.json->"$.e16[0]") as 'NO2',AVG(hd.json->"$.e15[0]") as 'O3_day'
FROM `history_daily` hd,monitor_point mt,device d where mt.id=d.monitor_point_id
and d.mac=hd.mac and mt.id=#{mId} and time=#{time}
        SELECT
        IFNULL(ROUND(AVG(hd.json->"$.e1[0]")),"") as `PM2_5`,IFNULL(ROUND(AVG(hd.json->"$.e2[0]")),"") as 'PM10',IFNULL(ROUND(AVG(hd.json->"$.e10[0]"),1),"") as 'CO',
        IFNULL(ROUND(AVG(hd.json->"$.e11[0]")),"") as 'SO2',IFNULL(ROUND(AVG(hd.json->"$.e16[0]")),"") as 'NO2',IFNULL(ROUND(AVG(hd.json->"$.e15[0]")),"") as 'O3_day'
        FROM `history_daily` hd,monitor_point mt,device d where mt.id=d.monitor_point_id
            and d.mac=hd.mac and mt.id=#{mId} and time=#{time}
    </select>
    <select id="getDailyAvgDataByMIds" resultType="java.util.Map">
        SELECT
        IFNULL(ROUND(AVG(hd.json->"$.e1[0]")),"") as `PM2_5`,IFNULL(ROUND(AVG(hd.json->"$.e2[0]")),"") as 'PM10',IFNULL(ROUND(AVG(hd.json->"$.e10[0]"),1),"") as 'CO',
        IFNULL(ROUND(AVG(hd.json->"$.e11[0]")),"") as 'SO2',IFNULL(ROUND(AVG(hd.json->"$.e16[0]")),"") as 'NO2',IFNULL(ROUND(AVG(hd.json->"$.e15[0]")),"") as 'O3_day'
            FROM `history_daily` hd,monitor_point mt,device d where mt.id=d.monitor_point_id
            and d.mac=hd.mac and mt.id in
        <foreach collection="mIds" item="id" index="index" open="(" close=")" separator=",">
            #{id}
        </foreach>
             and time=#{time}
    </select>
</mapper>