优化sql

This commit is contained in:
2025-07-18 20:14:38 +08:00
parent 51e6936d77
commit c51c4be498
6 changed files with 91 additions and 73 deletions

View File

@ -277,16 +277,14 @@
<select id="getStackAveTempList" resultType="com.xzzn.ems.domain.vo.StackAveTempVo">
select t.site_id,
t.operating_temp as temp,
t.create_time as createDate
avg(t.operating_temp) as temp,
DATE_FORMAT(t.create_time, '%Y-%m-%d %H:%i:00') AS createDate
from ems_battery_stack t
inner join (select site_id,create_time,MIN(device_id) as device_id
from ems_battery_stack
where site_id = #{siteId}
AND create_time &gt;= Date(#{startDate})
AND create_time &lt;= #{endDate}
GROUP BY site_id,create_time
) temp on t.site_id = temp.site_id and t.create_time = temp.create_time and t.device_id = temp.device_id
where t.site_id = #{siteId}
AND t.create_time &gt;= Date(#{startDate})
AND t.create_time &lt;= #{endDate}
GROUP BY t.site_id,createDate
order by createDate
</select>
<sql id="statisCommonFilter">
@ -358,4 +356,19 @@
AND latest.max_update_time = t.update_time
order by statisDate desc
</select>
<select id="getSiteSumStackInfo" parameterType="String" resultType="com.xzzn.ems.domain.EmsBatteryStack">
select SUM(t.stack_soc) as stackSoc,
sum(t.stack_soh) as stackSoh
from ems_battery_stack t
INNER JOIN (
select p.site_id,p.device_id,MAX(p.create_time) as max_time
from ems_battery_stack p
where p.site_id = #{siteId}
group by p.site_id, p.device_id
) latest on t.site_id = latest.site_id
and t.device_id = latest.device_id
and t.create_time = latest.max_time
where t.site_id = #{siteId}
</select>
</mapper>