调整电量计算逻辑

master
FCD 2 weeks ago
parent 8fc71ae240
commit 905d9597a0

@ -125,15 +125,16 @@
<select id="energyConsumptionReportByTime" resultType="java.util.Map">
SELECT
month_tag AS pointTime,
MAX(meter_value) - MIN(meter_value) expend
CASE WHEN #{timeSub} != 13 THEN MAX ( meter_value ) - MIN ( meter_value ) ELSE MAX(expend) END expend
FROM
(
SELECT
rpd.meter_value,
rpd.monitor_id,
FORMAT ( rpd.record_time, 'yyyy-MM' ) AS month_tag,
ROW_NUMBER ( ) OVER ( PARTITION BY FORMAT ( rpd.record_time, 'yyyy-MM' ), rpd.monitor_id ORDER BY rpd.record_time ASC ) AS rn_asc,
ROW_NUMBER ( ) OVER ( PARTITION BY FORMAT ( rpd.record_time, 'yyyy-MM' ), rpd.monitor_id ORDER BY rpd.record_time DESC ) AS rn_desc
rpd.expend,
left(CONVERT(VARCHAR(19), rpd.begin_time, 120), #{timeSub}) AS month_tag,
ROW_NUMBER ( ) OVER ( PARTITION BY left(CONVERT(VARCHAR(19), rpd.begin_time, 120), #{timeSub}), rpd.monitor_id ORDER BY rpd.record_time ASC ) AS rn_asc,
ROW_NUMBER ( ) OVER ( PARTITION BY left(CONVERT(VARCHAR(19), rpd.begin_time, 120), #{timeSub}), rpd.monitor_id ORDER BY rpd.record_time DESC ) AS rn_desc
FROM report_point_dnb rpd
LEFT JOIN base_monitor_info m ON m.monitor_id = rpd.monitor_id
<where>

Loading…
Cancel
Save