|  |  | 
 |  |  |  | 
 |  |  |     <update id="createTable" parameterType="String"> | 
 |  |  |         CREATE TABLE  IF NOT EXISTS `history_minutely_${timeUnits}` ( | 
 |  |  |             `mac` VARCHAR (20) DEFAULT NULL COMMENT '设备mac', | 
 |  |  |             `mac` VARCHAR (30) DEFAULT NULL COMMENT '设备mac', | 
 |  |  |             `time` datetime DEFAULT NULL COMMENT '数据时间', | 
 |  |  |             `value` json DEFAULT NULL COMMENT '数据', | 
 |  |  |             `version` INT (11) DEFAULT NULL COMMENT '型号', | 
 |  |  |             KEY `idx_mac` (`mac`), | 
 |  |  |             KEY `idx_time` (`time`), | 
 |  |  |             KEY `idx_mac_time` (`mac`,`time`) | 
 |  |  |             ) ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT '分钟数据表' | 
 |  |  |     </update> | 
 |  |  |  | 
 |  |  |     <select id="getHistoryFiveMinutelyData" resultType="java.util.LinkedHashMap"> | 
 |  |  |     <select id="getHistoryMinutelyData" resultType="java.util.LinkedHashMap"> | 
 |  |  |         SELECT | 
 |  |  |         mac, value | 
 |  |  |         mac, `value`, version | 
 |  |  |         FROM | 
 |  |  |         history_minutely_${timeUnits} | 
 |  |  |         WHERE time <![CDATA[>=]]> #{start} | 
 |  |  |         AND time <![CDATA[<]]> #{end} | 
 |  |  |         WHERE `time` <![CDATA[>=]]> #{start} | 
 |  |  |         AND `time` <![CDATA[<]]> #{end} | 
 |  |  |         <if test="macs != null"> | 
 |  |  |             AND mac IN | 
 |  |  |             <foreach collection="macs" item="mac" open="(" close=")" separator=","> | 
 |  |  |                 #{mac} | 
 |  |  |             </foreach> | 
 |  |  |         </if> | 
 |  |  |     </select> | 
 |  |  |  | 
 |  |  |     <select id="getHourlyData" resultType="java.util.Map"> | 
 |  |  |         SELECT mac, `time`, `value` | 
 |  |  |         FROM history_minutely_${timeUnits} | 
 |  |  |         WHERE `time` <![CDATA[>=]]> #{start} | 
 |  |  |         AND `time` <![CDATA[<]]> #{end} | 
 |  |  |     </select> | 
 |  |  |  | 
 |  |  | </mapper> |