sql查询-使用GROUP BY分组对每日的数据进行月统计

有这么一张表,存的是建筑每天的能耗用量:

image_1c55dh1kq44916tdvag1opj1umg9.png-92.7kB

(请不要吐槽字段名,毕竟这也不是我起的)

那么如果正常情况下,一个建筑一年就会有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');

这样就可以统计出每个月的总值。

image_1c55duop2giqv4oash104k2g213.png-40.7kB

posted on 2018-01-31 14:32  Yoooshiki  阅读(2003)  评论(0编辑  收藏  举报

导航