代码调整
This commit is contained in:
@@ -0,0 +1,56 @@
|
||||
package com.njcn.event.mapper.distribution;
|
||||
|
||||
import com.njcn.event.pojo.po.EventDistributionStatisticsPO;
|
||||
import com.njcn.event.pojo.po.EventDurationLineChartPO;
|
||||
import com.njcn.event.pojo.po.EventFeatureAmplitudeLineChartPO;
|
||||
import com.njcn.event.pojo.po.RmpEventDetailPO;
|
||||
import com.njcn.event.pojo.vo.EventDipShortDistributionVO;
|
||||
import com.njcn.event.pojo.vo.EventRiseDistributionVO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
|
||||
/***
|
||||
*
|
||||
* @author jianghaifei
|
||||
* @date 2022-11-08 09:26
|
||||
* @return
|
||||
*/
|
||||
|
||||
@Mapper
|
||||
public interface PwEventDistributionStatisticsMapper {
|
||||
|
||||
/**
|
||||
* 获取监测点暂态事件明细数据
|
||||
*
|
||||
* @param monitorIdList 监测点id
|
||||
* @param startTime 开始时间
|
||||
* @param endTime 结束时间
|
||||
* @return 监测点暂态事件明细数据
|
||||
*/
|
||||
List<RmpEventDetailPO> getRmpEventDetail(@Param("monitorIdList") List<String> monitorIdList,
|
||||
@Param("startTime") String startTime,
|
||||
@Param("endTime") String endTime);
|
||||
|
||||
|
||||
/***
|
||||
* 获取监测点电压暂降和短时中断分布情况
|
||||
* @author jianghaifei
|
||||
* @date 2022-11-8 09:26:34
|
||||
* @param map
|
||||
* @return com.njcn.event.pojo.vo.EventDipShortDistributionVO
|
||||
*/
|
||||
EventDipShortDistributionVO getEventDipShortDistributionByCond(Map<String, Object> map);
|
||||
|
||||
/***
|
||||
* 获取监测点电压暂升分布情况
|
||||
* @author jianghaifei
|
||||
* @date 2022-11-8 09:26:29
|
||||
* @param map
|
||||
* @return com.njcn.event.pojo.vo.EventRiseDistributionVO
|
||||
*/
|
||||
EventRiseDistributionVO getEventRiseDistributionByCond(Map<String, Object> map);
|
||||
}
|
||||
@@ -0,0 +1,265 @@
|
||||
<?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.njcn.event.mapper.distribution.PwEventDistributionStatisticsMapper">
|
||||
|
||||
|
||||
|
||||
<!--获取监测点暂态事件明细数据-->
|
||||
<select id="getRmpEventDetail" resultType="com.njcn.event.pojo.po.RmpEventDetailPO">
|
||||
SELECT
|
||||
measurement_point_id as measurementPointId,
|
||||
start_time AS startTime,
|
||||
duration AS duration,
|
||||
feature_amplitude AS featureAmplitude
|
||||
FROM
|
||||
`r_mp_event_detail`
|
||||
</select>
|
||||
|
||||
<!--获取监测点电压暂降和短时中断分布情况-->
|
||||
<select id="getEventDipShortDistributionByCond"
|
||||
resultType="com.njcn.event.pojo.vo.EventDipShortDistributionVO">
|
||||
SELECT
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 80 AND r.feature_amplitude <= 90 AND duration > 10 AND
|
||||
duration <= 100 THEN 1 ELSE 0 END ), 0 ) "featureAmp90with100ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 80 AND r.feature_amplitude <= 90 AND duration > 100 AND
|
||||
duration <= 250 THEN 1 ELSE 0 END ), 0 ) "featureAmp90with250ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 80 AND r.feature_amplitude <= 90 AND duration > 250 AND
|
||||
duration <= 500 THEN 1 ELSE 0 END ), 0 ) "featureAmp90with500ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 80 AND r.feature_amplitude <= 90 AND duration > 500 AND
|
||||
duration <= 1000 THEN 1 ELSE 0 END ), 0 ) "featureAmp90with1000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 80 AND r.feature_amplitude <= 90 AND duration > 1000 AND
|
||||
duration <= 3000 THEN 1 ELSE 0 END ), 0 ) "featureAmp90with3000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 80 AND r.feature_amplitude <= 90 AND duration > 3000 AND
|
||||
duration <= 10000 THEN 1 ELSE 0 END ), 0 ) "featureAmp90with10000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 80 AND r.feature_amplitude <= 90 AND duration > 10000 AND
|
||||
duration <= 20000 THEN 1 ELSE 0 END ), 0 ) "featureAmp90with20000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 80 AND r.feature_amplitude <= 90 AND duration > 20000 AND
|
||||
duration <= 60000 THEN 1 ELSE 0 END ), 0 ) "featureAmp90with60000ms",
|
||||
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 70 AND r.feature_amplitude < 80 AND duration > 10 AND
|
||||
duration <= 100 THEN 1 ELSE 0 END ), 0 ) "featureAmp80with100ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 70 AND r.feature_amplitude < 80 AND duration > 100 AND
|
||||
duration <= 250 THEN 1 ELSE 0 END ), 0 ) "featureAmp80with250ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 70 AND r.feature_amplitude < 80 AND duration > 250 AND
|
||||
duration <= 500 THEN 1 ELSE 0 END ), 0 ) "featureAmp80with500ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 70 AND r.feature_amplitude < 80 AND duration > 500 AND
|
||||
duration <= 1000 THEN 1 ELSE 0 END ), 0 ) "featureAmp80with1000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 70 AND r.feature_amplitude < 80 AND duration > 1000 AND
|
||||
duration <= 3000 THEN 1 ELSE 0 END ), 0 ) "featureAmp80with3000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 70 AND r.feature_amplitude < 80 AND duration > 3000 AND
|
||||
duration <= 10000 THEN 1 ELSE 0 END ), 0 ) "featureAmp80with10000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 70 AND r.feature_amplitude < 80 AND duration > 10000 AND
|
||||
duration <= 20000 THEN 1 ELSE 0 END ), 0 ) "featureAmp80with20000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 70 AND r.feature_amplitude < 80 AND duration > 20000 AND
|
||||
duration <= 60000 THEN 1 ELSE 0 END ), 0 ) "featureAmp80with60000ms",
|
||||
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 60 AND r.feature_amplitude < 70 AND duration > 10 AND
|
||||
duration <= 100 THEN 1 ELSE 0 END ), 0 ) "featureAmp70with100ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 60 AND r.feature_amplitude < 70 AND duration > 100 AND
|
||||
duration <= 250 THEN 1 ELSE 0 END ), 0 ) "featureAmp70with250ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 60 AND r.feature_amplitude < 70 AND duration > 250 AND
|
||||
duration <= 500 THEN 1 ELSE 0 END ), 0 ) "featureAmp70with500ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 60 AND r.feature_amplitude < 70 AND duration > 500 AND
|
||||
duration <= 1000 THEN 1 ELSE 0 END ), 0 ) "featureAmp70with1000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 60 AND r.feature_amplitude < 70 AND duration > 1000 AND
|
||||
duration <= 3000 THEN 1 ELSE 0 END ), 0 ) "featureAmp70with3000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 60 AND r.feature_amplitude < 70 AND duration > 3000 AND
|
||||
duration <= 10000 THEN 1 ELSE 0 END ), 0 ) "featureAmp70with10000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 60 AND r.feature_amplitude < 70 AND duration > 10000 AND
|
||||
duration <= 20000 THEN 1 ELSE 0 END ), 0 ) "featureAmp70with20000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 60 AND r.feature_amplitude < 70 AND duration > 20000 AND
|
||||
duration <= 60000 THEN 1 ELSE 0 END ), 0 ) "featureAmp70with60000ms",
|
||||
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 50 AND r.feature_amplitude < 60 AND duration > 10 AND
|
||||
duration <= 100 THEN 1 ELSE 0 END ), 0 ) "featureAmp60with100ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 50 AND r.feature_amplitude < 60 AND duration > 100 AND
|
||||
duration <= 250 THEN 1 ELSE 0 END ), 0 ) "featureAmp60with250ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 50 AND r.feature_amplitude < 60 AND duration > 250 AND
|
||||
duration <= 500 THEN 1 ELSE 0 END ), 0 ) "featureAmp60with500ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 50 AND r.feature_amplitude < 60 AND duration > 500 AND
|
||||
duration <= 1000 THEN 1 ELSE 0 END ), 0 ) "featureAmp60with1000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 50 AND r.feature_amplitude < 60 AND duration > 1000 AND
|
||||
duration <= 3000 THEN 1 ELSE 0 END ), 0 ) "featureAmp60with3000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 50 AND r.feature_amplitude < 60 AND duration > 3000 AND
|
||||
duration <= 10000 THEN 1 ELSE 0 END ), 0 ) "featureAmp60with10000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 50 AND r.feature_amplitude < 60 AND duration > 10000 AND
|
||||
duration <= 20000 THEN 1 ELSE 0 END ), 0 ) "featureAmp60with20000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 50 AND r.feature_amplitude < 60 AND duration > 20000 AND
|
||||
duration <= 60000 THEN 1 ELSE 0 END ), 0 ) "featureAmp60with60000ms",
|
||||
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 40 AND r.feature_amplitude < 50 AND duration > 10 AND
|
||||
duration <= 100 THEN 1 ELSE 0 END ), 0 ) "featureAmp50with100ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 40 AND r.feature_amplitude < 50 AND duration > 100 AND
|
||||
duration <= 250 THEN 1 ELSE 0 END ), 0 ) "featureAmp50with250ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 40 AND r.feature_amplitude < 50 AND duration > 250 AND
|
||||
duration <= 500 THEN 1 ELSE 0 END ), 0 ) "featureAmp50with500ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 40 AND r.feature_amplitude < 50 AND duration > 500 AND
|
||||
duration <= 1000 THEN 1 ELSE 0 END ), 0 ) "featureAmp50with1000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 40 AND r.feature_amplitude < 50 AND duration > 1000 AND
|
||||
duration <= 3000 THEN 1 ELSE 0 END ), 0 ) "featureAmp50with3000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 40 AND r.feature_amplitude < 50 AND duration > 3000 AND
|
||||
duration <= 10000 THEN 1 ELSE 0 END ), 0 ) "featureAmp50with10000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 40 AND r.feature_amplitude < 50 AND duration > 10000 AND
|
||||
duration <= 20000 THEN 1 ELSE 0 END ), 0 ) "featureAmp50with20000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 40 AND r.feature_amplitude < 50 AND duration > 20000 AND
|
||||
duration <= 60000 THEN 1 ELSE 0 END ), 0 ) "featureAmp50with60000ms",
|
||||
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 30 AND r.feature_amplitude < 40 AND duration > 10 AND
|
||||
duration <= 100 THEN 1 ELSE 0 END ), 0 ) "featureAmp40with100ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 30 AND r.feature_amplitude < 40 AND duration > 100 AND
|
||||
duration <= 250 THEN 1 ELSE 0 END ), 0 ) "featureAmp40with250ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 30 AND r.feature_amplitude < 40 AND duration > 250 AND
|
||||
duration <= 500 THEN 1 ELSE 0 END ), 0 ) "featureAmp40with500ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 30 AND r.feature_amplitude < 40 AND duration > 500 AND
|
||||
duration <= 1000 THEN 1 ELSE 0 END ), 0 ) "featureAmp40with1000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 30 AND r.feature_amplitude < 40 AND duration > 1000 AND
|
||||
duration <= 3000 THEN 1 ELSE 0 END ), 0 ) "featureAmp40with3000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 30 AND r.feature_amplitude < 40 AND duration > 3000 AND
|
||||
duration <= 10000 THEN 1 ELSE 0 END ), 0 ) "featureAmp40with10000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 30 AND r.feature_amplitude < 40 AND duration > 10000 AND
|
||||
duration <= 20000 THEN 1 ELSE 0 END ), 0 ) "featureAmp40with20000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 30 AND r.feature_amplitude < 40 AND duration > 20000 AND
|
||||
duration <= 60000 THEN 1 ELSE 0 END ), 0 ) "featureAmp40with60000ms",
|
||||
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 20 AND r.feature_amplitude < 30 AND duration > 10 AND
|
||||
duration <= 100 THEN 1 ELSE 0 END ), 0 ) "featureAmp30with100ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 20 AND r.feature_amplitude < 30 AND duration > 100 AND
|
||||
duration <= 250 THEN 1 ELSE 0 END ), 0 ) "featureAmp30with250ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 20 AND r.feature_amplitude < 30 AND duration > 250 AND
|
||||
duration <= 500 THEN 1 ELSE 0 END ), 0 ) "featureAmp30with500ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 20 AND r.feature_amplitude < 30 AND duration > 500 AND
|
||||
duration <= 1000 THEN 1 ELSE 0 END ), 0 ) "featureAmp30with1000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 20 AND r.feature_amplitude < 30 AND duration > 1000 AND
|
||||
duration <= 3000 THEN 1 ELSE 0 END ), 0 ) "featureAmp30with3000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 20 AND r.feature_amplitude < 30 AND duration > 3000 AND
|
||||
duration <= 10000 THEN 1 ELSE 0 END ), 0 ) "featureAmp30with10000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 20 AND r.feature_amplitude < 30 AND duration > 10000 AND
|
||||
duration <= 20000 THEN 1 ELSE 0 END ), 0 ) "featureAmp30with20000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 20 AND r.feature_amplitude < 30 AND duration > 20000 AND
|
||||
duration <= 60000 THEN 1 ELSE 0 END ), 0 ) "featureAmp30with60000ms",
|
||||
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 10 AND r.feature_amplitude < 20 AND duration > 10 AND
|
||||
duration <= 100 THEN 1 ELSE 0 END ), 0 ) "featureAmp20with100ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 10 AND r.feature_amplitude < 20 AND duration > 100 AND
|
||||
duration <= 250 THEN 1 ELSE 0 END ), 0 ) "featureAmp20with250ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 10 AND r.feature_amplitude < 20 AND duration > 250 AND
|
||||
duration <= 500 THEN 1 ELSE 0 END ), 0 ) "featureAmp20with500ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 10 AND r.feature_amplitude < 20 AND duration > 500 AND
|
||||
duration <= 1000 THEN 1 ELSE 0 END ), 0 ) "featureAmp20with1000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 10 AND r.feature_amplitude < 20 AND duration > 1000 AND
|
||||
duration <= 3000 THEN 1 ELSE 0 END ), 0 ) "featureAmp20with3000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 10 AND r.feature_amplitude < 20 AND duration > 3000 AND
|
||||
duration <= 10000 THEN 1 ELSE 0 END ), 0 ) "featureAmp20with10000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 10 AND r.feature_amplitude < 20 AND duration > 10000 AND
|
||||
duration <= 20000 THEN 1 ELSE 0 END ), 0 ) "featureAmp20with20000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 10 AND r.feature_amplitude < 20 AND duration > 20000 AND
|
||||
duration <= 60000 THEN 1 ELSE 0 END ), 0 ) "featureAmp20with60000ms",
|
||||
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 0 AND r.feature_amplitude < 10 AND duration > 10 AND
|
||||
duration <= 100 THEN 1 ELSE 0 END ), 0 ) "featureAmp10with100ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 0 AND r.feature_amplitude < 10 AND duration > 100 AND
|
||||
duration <= 250 THEN 1 ELSE 0 END ), 0 ) "featureAmp10with250ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 0 AND r.feature_amplitude < 10 AND duration > 250 AND
|
||||
duration <= 500 THEN 1 ELSE 0 END ), 0 ) "featureAmp10with500ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 0 AND r.feature_amplitude < 10 AND duration > 500 AND
|
||||
duration <= 1000 THEN 1 ELSE 0 END ), 0 ) "featureAmp10with1000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 0 AND r.feature_amplitude < 10 AND duration > 1000 AND
|
||||
duration <= 3000 THEN 1 ELSE 0 END ), 0 ) "featureAmp10with3000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 0 AND r.feature_amplitude < 10 AND duration > 3000 AND
|
||||
duration <= 10000 THEN 1 ELSE 0 END ), 0 ) "featureAmp10with10000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 0 AND r.feature_amplitude < 10 AND duration > 10000 AND
|
||||
duration <= 20000 THEN 1 ELSE 0 END ), 0 ) "featureAmp10with20000ms",
|
||||
COALESCE( sum( CASE WHEN r.feature_amplitude >= 0 AND r.feature_amplitude < 10 AND duration > 20000 AND
|
||||
duration <= 60000 THEN 1 ELSE 0 END ), 0 ) "featureAmp10with60000ms"
|
||||
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
duration,
|
||||
feature_amplitude
|
||||
FROM
|
||||
r_mp_event_detail
|
||||
WHERE 1 = 1
|
||||
AND measurement_point_id IN
|
||||
<foreach collection="monitorIdList" item="item" open="(" close=")" separator=",">
|
||||
#{item}
|
||||
</foreach>
|
||||
|
||||
AND event_type IN
|
||||
<foreach collection="eventTypeList" item="type" open="(" close=")" separator=",">
|
||||
#{type}
|
||||
</foreach>
|
||||
|
||||
<choose>
|
||||
<when test="dateType != null and dateType == 3">
|
||||
<if test="startTime != null and startTime != ''">
|
||||
AND DATE_FORMAT(start_time, '%Y-%m') >= #{startTime}
|
||||
</if>
|
||||
<if test="endTime != null and endTime != ''">
|
||||
AND DATE_FORMAT(start_time, '%Y-%m') <= #{endTime}
|
||||
</if>
|
||||
</when>
|
||||
<when test="dateType != null and dateType == 5">
|
||||
<if test="startTime != null and startTime != ''">
|
||||
AND DATE_FORMAT(start_time, '%Y-%m-%d') >= #{startTime}
|
||||
</if>
|
||||
<if test="endTime != null and endTime != ''">
|
||||
AND DATE_FORMAT(start_time, '%Y-%m-%d') <= #{endTime}
|
||||
</if>
|
||||
</when>
|
||||
</choose>
|
||||
)
|
||||
r
|
||||
</select>
|
||||
|
||||
<!--获取监测点电压暂升分布情况-->
|
||||
<select id="getEventRiseDistributionByCond" resultType="com.njcn.event.pojo.vo.EventRiseDistributionVO">
|
||||
SELECT
|
||||
COALESCE(sum(CASE WHEN r.feature_amplitude >= 120 AND duration > 10 AND duration <= 500 THEN 1 ELSE 0 END), 0) "featureAmp120with500ms",
|
||||
COALESCE(sum(CASE WHEN r.feature_amplitude >= 120 AND duration > 500 AND duration <= 5000 THEN 1 ELSE 0 END), 0) "featureAmp120with5000ms",
|
||||
COALESCE(sum(CASE WHEN r.feature_amplitude >= 120 AND duration > 5000 AND duration <= 60000 THEN 1 ELSE 0 END), 0) "featureAmp120with60000ms",
|
||||
|
||||
COALESCE(sum(CASE WHEN r.feature_amplitude >= -120 AND r.feature_amplitude <= 110 AND duration > 10 AND duration <= 500 THEN 1 ELSE 0 END), 0) "featureAmp110with500ms",
|
||||
COALESCE(sum(CASE WHEN r.feature_amplitude >= -120 AND r.feature_amplitude <= 110 AND duration > 500 AND duration <= 5000 THEN 1 ELSE 0 END), 0) "featureAmp110with5000ms",
|
||||
COALESCE(sum(CASE WHEN r.feature_amplitude >= -120 AND r.feature_amplitude <= 110 AND duration > 5000 AND duration <= 60000 THEN 1 ELSE 0 END), 0) "featureAmp110with60000ms"
|
||||
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
duration,
|
||||
feature_amplitude
|
||||
FROM
|
||||
r_mp_event_detail
|
||||
WHERE 1 = 1
|
||||
AND measurement_point_id IN
|
||||
<foreach collection="monitorIdList" item="item" open="(" close=")" separator=",">
|
||||
#{item}
|
||||
</foreach>
|
||||
|
||||
AND event_type IN
|
||||
<foreach collection="eventTypeList" item="type" open="(" close=")" separator=",">
|
||||
#{type}
|
||||
</foreach>
|
||||
|
||||
<choose>
|
||||
<when test="dateType != null and dateType == 3">
|
||||
<if test="startTime != null and startTime != ''">
|
||||
AND DATE_FORMAT(start_time, '%Y-%m') >= #{startTime}
|
||||
</if>
|
||||
<if test="endTime != null and endTime != ''">
|
||||
AND DATE_FORMAT(start_time, '%Y-%m') <= #{endTime}
|
||||
</if>
|
||||
</when>
|
||||
<when test="dateType != null and dateType == 5">
|
||||
<if test="startTime != null and startTime != ''">
|
||||
AND DATE_FORMAT(start_time, '%Y-%m-%d') >= #{startTime}
|
||||
</if>
|
||||
<if test="endTime != null and endTime != ''">
|
||||
AND DATE_FORMAT(start_time, '%Y-%m-%d') <= #{endTime}
|
||||
</if>
|
||||
</when>
|
||||
</choose>
|
||||
)
|
||||
r
|
||||
</select>
|
||||
</mapper>
|
||||
Reference in New Issue
Block a user