insert into alert_data(faultId,faultdescs,faultstatus,createtime,messageType,controller_id,device_id,longitude,latitude,readpeople)
VALUES(#{faultId},#{faultdescs},#{faultstatus},#{createtime},#{messageType},#{controllerId},#{deviceId},#{longitude},#{latitude},#{readpeople})
update alert_data set faultstatus=#{faultstatus},
messageType=#{messageType},
longitude=#{longitude},
latitude=#{latitude}
where faultdescs=#{faultdescs}
and controller_id=#{controllerId}
and device_id=#{deviceId}
AND createtime < #{createtime} -- 1. 必须是当前传输时间之前的
ORDER BY createtime DESC -- 2. 按时间倒序,取最近的一条
LIMIT 1;
CREATE TABLE `${tableName}` (
`faultId` varchar(255) DEFAULT NULL COMMENT '消息id',
`faultdescs` varchar(255) DEFAULT NULL COMMENT '故障描述',
`faultstatus` varchar(255) DEFAULT NULL COMMENT '故障是否恢复(0:触发,1:恢复)',
`createtime` varchar(255) DEFAULT NULL COMMENT '故障发生事件',
`messageType` varchar(255) DEFAULT NULL COMMENT '消息状态(0未读,1已读)',
`controller_id` varchar(255) DEFAULT NULL COMMENT '控制器id',
`device_id` varchar(255) DEFAULT NULL COMMENT '设备id',
`longitude` varchar(255) DEFAULT NULL COMMENT '经度',
`latitude` varchar(255) DEFAULT NULL COMMENT '纬度',
`readpeople` varchar(255) DEFAULT NULL COMMENT '读取人'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户告警信息表';