MySQL中如何基于两列Datetime筛选并求和能耗数据?
完整SQL语句实现指定时段能耗求和
你需要补充的WHERE条件可通过datetime范围筛选完成,完整SQL语句如下:
SELECT ROUND(SUM(consumption), 3) AS c FROM electricity WHERE interval_start >= '2023-06-10 00:00:00' AND interval_start <= '2023-06-10 02:30:00';
也可以用BETWEEN简化写法,效果完全一致:
SELECT ROUND(SUM(consumption), 3) AS c FROM electricity WHERE interval_start BETWEEN '2023-06-10 00:00:00' AND '2023-06-10 02:30:00';
说明
- 由于
interval_start是datetime类型,直接与字符串格式的时间值比较即可,数据库会自动完成类型转换(需确保时间格式符合数据库datetime标准)。 - 两种写法都会筛选出
interval_start落在目标时段内的所有记录,并对这些记录的consumption字段求和后保留3位小数。
内容的提问来源于stack exchange,提问作者Harry
相关产品推荐
相关产品推荐

