确实很实用了,可以把里面的8换成任意时间段
解决方案如下:
SELECT SUM
( col1 ) AS sum_col1,
SUM ( col2 ) AS sum_col2,
SUM ( col3 ) AS sum_col3,
DATEADD( HOUR, DATEDIFF( HOUR, 0, date_column ) / 8 * 8, 0 ) AS group_time
FROM
tableGROUP BY DATEADD( HOUR, DATEDIFF( HOUR, 0, date_column ) / 8 * 8, 0 )
其中,col1、col2、col3是需要汇总的列,date_column是用于分组的日期时间列。代码中的DATEADD和DATEDIFF函数用于将日期时间按8小时分组。最后,使用GROUP BY对group_time进行分组,计算每个时间段的汇总值。
请注意,此代码仅为示例,你需要根据你的具体情况进行调整。