jinpengyong
2020-11-18 e786ed5d01635555dac37c69003bdbbf757d69d8
src/main/resources/mapper/HistoryMapper.xml
@@ -13,7 +13,7 @@
            d.`name`,
        </if>
        <foreach collection="sensorKeys" separator="," item="sensorKey">
            AVG(h.`value` ->'$.${sensorKey}') AS '${sensorKey}'
            AVG(h.json ->'$.${sensorKey}[0]') AS '${sensorKey}'
        </foreach>
        FROM
        history_${timeUnits} h,
@@ -164,7 +164,7 @@
    </select>
    <select id="getAVGValueByMacAndTimeslot" resultType="java.util.Map">
      SELECT AVG(JSON_EXTRACT(value,'$.e1[0]')) e1,AVG(JSON_EXTRACT(value,'$.e2[0]')) e2,AVG(JSON_EXTRACT(value,'$.e10[0]')) e10,AVG(JSON_EXTRACT(value,'$.e11[0]')) e11,AVG(JSON_EXTRACT(value,'$.e16[0]')) e16,AVG(JSON_EXTRACT(value,'$.e15[0]')) e15
      SELECT AVG(JSON_EXTRACT(value,'$.e1')) e1,AVG(JSON_EXTRACT(value,'$.e2')) e2,AVG(JSON_EXTRACT(value,'$.e10')) e10,AVG(JSON_EXTRACT(value,'$.e11')) e11,AVG(JSON_EXTRACT(value,'$.e16')) e16,AVG(JSON_EXTRACT(value,'$.e15')) e15
      FROM history_${timeUnits}
      WHERE mac = #{mac}
      AND time >= #{starttime}
@@ -196,7 +196,7 @@
    </select>
    <select id="getAVGSensorRankByMonitorPointIdList" resultType="java.util.Map">
        SELECT mp.name, AVG(JSON_EXTRACT(h.value,'$.${sensor}[0]')) sensor
        SELECT mp.name, AVG(JSON_EXTRACT(h.value,'$.${sensor}')) sensor
        FROM device d, history_${timeUnits} h, monitor_point mp
        WHERE d.mac=h.mac
        And mp.id=d.monitor_point_id
@@ -206,11 +206,11 @@
        </foreach>
        AND h.time BETWEEN #{before5Time} AND #{endTime}
        GROUP BY d.monitor_point_id
        ORDER BY AVG(JSON_EXTRACT(h.value,'$.${sensor}[0]')) DESC
        ORDER BY AVG(JSON_EXTRACT(h.value,'$.${sensor}')) DESC
    </select>
    <select id="getMonitorPointAVGValueByMonitorPointIdAndTimeslot" resultType="java.util.Map">
       SELECT AVG(JSON_EXTRACT(value,'$.e1[0]')) e1,AVG(JSON_EXTRACT(value,'$.e2[0]')) e2,AVG(JSON_EXTRACT(value,'$.e10[0]')) e10,AVG(JSON_EXTRACT(value,'$.e11[0]')) e11,AVG(JSON_EXTRACT(value,'$.e16[0]')) e16,AVG(JSON_EXTRACT(value,'$.e15[0]')) e15
       SELECT AVG(JSON_EXTRACT(value,'$.e1')) e1,AVG(JSON_EXTRACT(value,'$.e2')) e2,AVG(JSON_EXTRACT(value,'$.e10')) e10,AVG(JSON_EXTRACT(value,'$.e11')) e11,AVG(JSON_EXTRACT(value,'$.e16')) e16,AVG(JSON_EXTRACT(value,'$.e15')) e15
      FROM device d,history_${timeUnits} h
      WHERE d.monitor_point_id = #{monitor_point_id}
      AND d.mac = h.mac