SQL Server按5分钟分组统计数据
程序员文章站
2024-03-15 17:23:54
...
–先把时间分组然后标号
– 分组划分:(小时*60+分钟)/ 分钟值
SELECT ( DATEPART(hh,GETDATE()) * 60 + datepart(mi,GETDATE()) ) /5
例子:把时间分组放到临时表
--创建临时表获取分组区域
CREATE TABLE #tab
(
start_time DATETIME
,end_time DATETIME
,num INT
);
DECLARE @time DATETIME = '2019-11-13 00:00:00';
WHILE @time < '2019-11-14'
BEGIN
INSERT INTO #tab
( start_time
,end_time
,num
)
VALUES ( @time
,DATEADD(mi, 5, @time)
,( DATEPART(hh, @time) * 60 + DATEPART(mi, @time) ) / 5
);
SET @time = DATEADD(mi, 5, @time);
END;
--查看
SELECT *
FROM #tab;