SELECT Year(datetime) year,Month(datetime) month,
Day(datetime) day,
DATEPART(hour, datetime) hour,
Right(100 + DATEPART(MINUTE, datetime),2) min,
convert(decimal(18,1),avg(value)) Val
from tablename where datetime between '2018-12-27 0:0' and '2018-12-28 0:0' and datediff(MINUTE,cast('2018-12-27 09:00:00' as datetime),datetime) %5 = 0
GROUP BY Year(datetime),Month(datetime),Day(datetime),DATEPART(hour, datetime), DATEPART(MINUTE, datetime)
关键就是按照年、月、日、小时、分钟进行分组统计,通过datediff()函数便可求得相连的两个时间段的间隔时间
datediff(MINUTE,cast('2018-12-27 09:00:00' as datetime),datetime) %5 = 0