| | |
| | | AND time < #{end} |
| | | </select> |
| | | |
| | | <select id="getAvgByDevice" resultType="java.util.Map"> |
| | | SELECT |
| | | <foreach collection="sensorKeys" separator="," item="sensorKey"> |
| | | AVG(json->'$.${sensorKey}[0]') AS '${sensorKey}' |
| | | </foreach> |
| | | FROM |
| | | history_daily |
| | | WHERE |
| | | mac IN |
| | | (SELECT |
| | | d.mac |
| | | FROM |
| | | device d |
| | | WHERE |
| | | d.is_delete = 0 |
| | | <if test="monitorPointId != null"> |
| | | AND d.monitor_point_id = #{monitorPointId} |
| | | </if> |
| | | <if test="mac != null"> |
| | | AND d.mac = #{mac} |
| | | </if> |
| | | ) |
| | | AND time >= #{start} |
| | | AND time < #{end} |
| | | </select> |
| | | |
| | | <select id="getMonitorPointOrDeviceAvgData" resultType="java.util.Map"> |
| | | SELECT |
| | | DATE_FORMAT(time, #{typeFormat}) time |
| | |
| | | ORDER BY |
| | | time |
| | | </select> |
| | | |
| | | <select id="selectLineChartDateByCrieria" resultType="java.util.Map"> |
| | | SELECT |
| | | <choose> |
| | |
| | | DATE_FORMAT(time,'${@com.moral.common.util.ReportTimeFormat@toMySqlTimeFormat(timePeriod.timeUnits)}') as |
| | | format_time |
| | | FROM |
| | | `history_minutely` hmi |
| | | history_${timeUnits} hmi |
| | | <where> |
| | | and hmi.time >= #{timePeriod.startTime} |
| | | and hmi.time <![CDATA[<=]]> #{timePeriod.endTime} |
| | |
| | | history_minutely as hm |
| | | <where> |
| | | <if test="mac!=null"> |
| | | and hm.mac=#{mac} |
| | | and hm.mac = #{mac} |
| | | </if> |
| | | and hm.time >= #{startTime} |
| | | and hm.time <![CDATA[<]]> #{endTime} |
| | |
| | | history_minutely_${yearAndMonth} as hm |
| | | <where> |
| | | <if test="mac!=null"> |
| | | and hm.mac=#{mac} |
| | | and hm.mac = #{mac} |
| | | </if> |
| | | and hm.time >= #{startTime} |
| | | and hm.time <![CDATA[<]]> #{endTime} |
| | |
| | | device d, |
| | | monitor_point m |
| | | WHERE |
| | | h.mac=d.mac |
| | | AND d.monitor_point_id=m.id |
| | | h.mac = d.mac |
| | | AND d.monitor_point_id = m.id |
| | | AND h.time >= #{start} |
| | | AND h.time <![CDATA[<=]]> #{end} |
| | | AND h.mac in |
| | | <foreach collection="macs" open="(" separator="," close=")" item="mac"> |
| | | #{mac} |
| | | </foreach> |
| | | GROUP BY |
| | | h.mac,m.name,d.name,DATE_FORMAT(time, #{typeFormat}) |
| | | ORDER BY |
| | | h.mac) rs |
| | | GROUP BY rs.monitorPointName,rs.name |
| | | order by rs.monitorPointName |
| | | </select> |
| | | |
| | | <select id="getDevicesSensorsAvgDataToExcel" resultType="java.util.LinkedHashMap"> |
| | | select |
| | | rs.monitorPointName,rs.name, |
| | | <foreach collection="timeList" separator="," item="time"> |
| | | max(case time when #{time} then rs.json else "" end) as #{time} |
| | | </foreach> |
| | | from |
| | | (SELECT |
| | | m.name as monitorPointName,d.name,DATE_FORMAT(time, #{typeFormat}) time,h.json |
| | | FROM |
| | | history_${timeUnits} h, |
| | | device d, |
| | | monitor_point m |
| | | WHERE |
| | | h.mac = d.mac |
| | | AND d.monitor_point_id = m.id |
| | | AND h.time >= #{start} |
| | | AND h.time <![CDATA[<=]]> #{end} |
| | | AND h.mac in |
| | |
| | | item="mac"> |
| | | #{mac} |
| | | </foreach> |
| | | GROUP BY |
| | | h.mac,m.name,d.name,DATE_FORMAT(time, #{typeFormat}) |
| | | ORDER BY |
| | | h.mac) rs |
| | | GROUP BY rs.monitorPointName,rs.name |