From 07a1946f06e317796c7e07807db11d8251b77655 Mon Sep 17 00:00:00 2001
From: kaiyu <404897439@qq.com>
Date: Tue, 27 Oct 2020 14:21:06 +0800
Subject: [PATCH] 计算平均风向
---
src/main/resources/mapper/AlarmMapper.xml | 38 +++++++++++++++++++++-----------------
1 files changed, 21 insertions(+), 17 deletions(-)
diff --git a/src/main/resources/mapper/AlarmMapper.xml b/src/main/resources/mapper/AlarmMapper.xml
index 210ab59..f070bda 100644
--- a/src/main/resources/mapper/AlarmMapper.xml
+++ b/src/main/resources/mapper/AlarmMapper.xml
@@ -1,25 +1,29 @@
<?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
- <foreach collection="sensorKeys" open="," separator="," item="sensorKey">
- AVG(a.json->'$.${sensorKey}[0]') AS '${sensorKey}'
- </foreach>
+ json_search ( json, 'all', '1' ) '1',
+ json_search ( json, 'all', '2' ) '2',
+ json_search ( json, 'all', '3' ) '3'
FROM
- alarm_${yearAndMonth} a
+ alarm_${yearAndMonth}
WHERE
- a.time >= #{start}
- AND a.time <![CDATA[<]]> #{end}
- AND a.mac in
- <foreach collection="macs" open="(" separator="," close=")"
- item="mac">
- #{mac}
- </foreach>
- group by
- a.mac
+ time >= #{start}
+ AND time <![CDATA[<]]> #{end}
+ AND mac =#{mac}
+ </select>
+
+ <select id="getMacs" resultType="java.lang.String">
+ SELECT
+ mac
+ FROM
+ alarm_${yearAndMonth}
+ where
+ time >= #{start}
+ AND time <![CDATA[<]]> #{end}
+ GROUP BY
+ mac
</select>
<insert id="insertAlarmDaily">
@@ -32,7 +36,7 @@
</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,
--
Gitblit v1.8.0