|
|
|
@ -159,11 +159,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
|
|
|
</foreach>
|
|
|
|
|
</if>
|
|
|
|
|
|
|
|
|
|
<!-- 过滤异常数据:温度、湿度、噪声范围 [0, 80] -->
|
|
|
|
|
<!-- 过滤异常数据:温度、湿度、噪声范围 [1, 79] -->
|
|
|
|
|
<!-- 优化:使用BETWEEN和简化NULL检查提高TiDB性能 -->
|
|
|
|
|
AND (temperature IS NULL OR temperature BETWEEN 0 AND 80)
|
|
|
|
|
AND (humidity IS NULL OR humidity BETWEEN 0 AND 80)
|
|
|
|
|
AND (noise IS NULL OR noise BETWEEN 0 AND 80)
|
|
|
|
|
AND (temperature IS NULL OR temperature BETWEEN 1 AND 79)
|
|
|
|
|
AND (humidity IS NULL OR humidity BETWEEN 1 AND 79)
|
|
|
|
|
AND (noise IS NULL OR noise BETWEEN 1 AND 79)
|
|
|
|
|
|
|
|
|
|
</where>
|
|
|
|
|
</foreach>
|
|
|
|
@ -251,11 +251,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
|
|
|
</foreach>
|
|
|
|
|
</if>
|
|
|
|
|
|
|
|
|
|
<!-- 过滤异常数据:温度、湿度、噪声范围 [0, 80] -->
|
|
|
|
|
<!-- 过滤异常数据:温度、湿度、噪声范围 [1, 79] -->
|
|
|
|
|
<!-- 优化:使用BETWEEN和简化NULL检查提高TiDB性能 -->
|
|
|
|
|
AND (temperature IS NULL OR temperature BETWEEN 0 AND 80)
|
|
|
|
|
AND (humidity IS NULL OR humidity BETWEEN 0 AND 80)
|
|
|
|
|
AND (noise IS NULL OR noise BETWEEN 0 AND 80)
|
|
|
|
|
AND (temperature IS NULL OR temperature BETWEEN 1 AND 79)
|
|
|
|
|
AND (humidity IS NULL OR humidity BETWEEN 1 AND 79)
|
|
|
|
|
AND (noise IS NULL OR noise BETWEEN 1 AND 79)
|
|
|
|
|
|
|
|
|
|
</where>
|
|
|
|
|
)
|
|
|
|
@ -303,11 +303,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
|
|
|
</foreach>
|
|
|
|
|
</if>
|
|
|
|
|
|
|
|
|
|
<!-- 过滤异常数据:温度、湿度、噪声范围 [0, 80] -->
|
|
|
|
|
<!-- 过滤异常数据:温度、湿度、噪声范围 [1, 79] -->
|
|
|
|
|
<!-- 优化:使用BETWEEN和简化NULL检查提高TiDB性能 -->
|
|
|
|
|
AND (temperature IS NULL OR temperature BETWEEN 0 AND 80)
|
|
|
|
|
AND (humidity IS NULL OR humidity BETWEEN 0 AND 80)
|
|
|
|
|
AND (noise IS NULL OR noise BETWEEN 0 AND 80)
|
|
|
|
|
AND (temperature IS NULL OR temperature BETWEEN 1 AND 79)
|
|
|
|
|
AND (humidity IS NULL OR humidity BETWEEN 1 AND 79)
|
|
|
|
|
AND (noise IS NULL OR noise BETWEEN 1 AND 79)
|
|
|
|
|
|
|
|
|
|
</where>
|
|
|
|
|
</foreach>
|
|
|
|
@ -395,9 +395,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
|
|
|
#{monitorId}
|
|
|
|
|
</foreach>
|
|
|
|
|
</if>
|
|
|
|
|
AND (temperature IS NULL OR temperature BETWEEN 0 AND 80)
|
|
|
|
|
AND (humidity IS NULL OR humidity BETWEEN 0 AND 80)
|
|
|
|
|
AND (noise IS NULL OR noise BETWEEN 0 AND 80)
|
|
|
|
|
AND (temperature IS NULL OR temperature BETWEEN 1 AND 79)
|
|
|
|
|
AND (humidity IS NULL OR humidity BETWEEN 1 AND 79)
|
|
|
|
|
AND (noise IS NULL OR noise BETWEEN 1 AND 79)
|
|
|
|
|
</where>
|
|
|
|
|
GROUP BY monitorId, time_slot
|
|
|
|
|
) t2 ON t1.monitorId = t2.monitorId AND t1.recodeTime = t2.max_time
|
|
|
|
|