| | |
| | | <?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.AlarmMapper"> |
| | | <select id="getAvgAlarmData" resultType="java.util.LinkedHashMap"> |
| | | <select id="getAlarmData" resultType="java.util.LinkedHashMap"> |
| | | SELECT |
| | | a.mac, |
| | | max(a.state) state |
| | | mac |
| | | <foreach collection="sensorKeys" open="," separator="," item="sensorKey"> |
| | | AVG(a.json->'$.${sensorKey}[0]') AS '${sensorKey}' |
| | | json->'$.${sensorKey}[0]' AS '${sensorKey}' |
| | | </foreach> |
| | | FROM |
| | | alarm_${yearAndMonth} a |
| | | alarm_${yearAndMonth} |
| | | WHERE |
| | | a.time >= #{start} |
| | | AND a.time <![CDATA[<]]> #{end} |
| | | AND a.mac in |
| | | time >= #{start} |
| | | AND time <![CDATA[<]]> #{end} |
| | | AND mac in |
| | | <foreach collection="macs" open="(" separator="," close=")" |
| | | item="mac"> |
| | | #{mac} |
| | | </foreach> |
| | | group by |
| | | a.mac |
| | | </select> |
| | | |
| | | <insert id="insertAlarmDaily"> |
| | |
| | | </insert> |
| | | |
| | | <update id="createTable"> |
| | | CREATE TABLE `alarm_${yearAndMonth}` ( |
| | | CREATE TABLE IF NOT EXISTS `alarm_${yearAndMonth}` ( |
| | | `mac` varchar(20) CHARACTER SET utf8 DEFAULT NULL, |
| | | `json` json DEFAULT NULL, |
| | | `state` int(2) DEFAULT NULL, |