sql查询-使用GROUP BY分组对每日的数据进行月统计
有这么一张表,存的是建筑每天的能耗用量:
(请不要吐槽字段名,毕竟这也不是我起的)
那么如果正常情况下,一个建筑一年就会有365条记录。
那么,如何可以根据月份数据(F_StartDay)进行汇总?得出12个值,分别是每个月数据的总和?
思路:
将 F_StartDay 转换为年月(DATE_FORMAT(F_StartDay, \'%Y%m\'))
,然后GROUP BY
具体可以这样写:
SELECT
DATE_FORMAT(F_StartDay, \'%Y%m\'),
SUM(F_DayValue)
FROM
tb_c_energyitemdXXXX
WHERE
F_BuildID = \'440XXXX\'
AND F_StartDay LIKE \'2017%\'
AND F_EnergyItemCode = \'01000\'
GROUP BY
DATE_FORMAT(F_StartDay, \'%Y%m\');
这样就可以统计出每个月的总值。