【发布时间】:2012-09-19 18:33:53
【问题描述】:
我有一个包含三列的表格。
- 任务应该开始的时间 (nominalStartTime)
- 开始时间 (startTime)
- 结束时 (endTime)
大约有一堆任务计划每 15 分钟运行一次。我需要知道第一个任务开始时间和最后一个任务结束时间之间的区别。例如,见下文
NominalStartTime | startTime | endTime
____________________|_____________|____________
2012-09-19 08:15:00 | 08:15:41.27 | 08:15:47.00
2012-09-19 08:15:00 | 08:15:45.13 | 08:15:45.43
2012-09-19 08:15:00 | 08:15:49.88 | 08:15:50.13
2012-09-19 08:30:00 | 08:30:25.27 | 08:30:26.00
2012-09-19 08:30:00 | 08:30:45.13 | 08:30:45.43
2012-09-19 08:30:00 | 08:30:49.88 | 08:30:50.13
我正在寻找要返回的查询
NominalStartTime | startTime | endTime | difference
____________________|_____________|_____________|____________
2012-09-19 08:15:00 | 08:15:41.27 | 08:15:50.13 | 00:00:08.86
2012-09-19 08:30:00 | 08:30:25.27 | 08:30:50.13 | 00:00:24.86
我试过这个,但我得到了聚合组错误等
Select NominalStart, MIN(TimeStarted) as TimeStarted, MAX(TimeEnded) as TimeEnded, DATEDIFF(ms, TimeStarted, TimeEnded)
FROM taskRuns
GROUP BY NominalStart
ORDER BY NominalStart
【问题讨论】: