在SQL Server中将时间字段分组为5分钟

Sca*_*000 4 sql sql-server-2012

我有一段时间,想要创建第二列,以显示它们落入24小时时钟的5分钟间隔.例如

15:19:52 becomes 15:15:00
15:20:11 becomes 15:20:00
Run Code Online (Sandbox Code Playgroud)

SQL*_*hao 5

您可以执行以下操作.它建立了时间

SELECT TIMEFROMPARTS(
         DATEPART(HOUR, yourTimeField),
         DATEPART(MINUTE, yourTimeField) / 5 * 5, 0,
         0,
         0)
FROM yourTable
Run Code Online (Sandbox Code Playgroud)

链接到SQL小提琴示例

  • @RoyiNamir:2008年没有'TIMEFROMPARTS`(我也是),但你可以像`SELECT CAST(DATEPART(HOUR,yourTimeField)一样即兴(2))+':'+ CAST((DATEPART(MINUTE,yourTimeField) )/ 5*5)作为CHAR(2))+':00'作为TimeIntervalFive FROM times` (2认同)