小编use*_*190的帖子

根据开始和结束时间每小时拆分持续时间

我有一个表,用于注册设备的状态。状态有开始时间和结束时间。但现在我想知道每个小时的状态是什么。如果从 15:20 到 17:10 的状态是“Operating”,我想看到它在一天的第 16 个小时运行 40 分钟,第 17 个小时运行 60 分钟,第 18 个小时运行 10 分钟当天。

这就是我现在所拥有的:

Shift_date 状态 Start_timestamp End_Timestamp
---------- --------- --------------- ---------------
5/20/2017 运营 5/20/2017 8:21 5/20/2017 10:40
5/21/2017 延迟 5/20/2017 10:40 5/20/2017 11:10
5/22/2017 运营 5/20/2017 11:10 5/20/2017 13:50

这就是我要的:

Shift_date 小时状态持续时间(分钟)
---------- ---- --------- ----------
5/20/2017 1 .. ..
2017 年 5 月 20 日 ..... ..
5/20/2017 9 运营 39
5/20/2017 10 运营 60
5/20/2017 11 运营 40
5/20/2017 11 延迟 20
5/20/2017 …

sql-server-2008 sql-server

5
推荐指数
2
解决办法
1万
查看次数

标签 统计

sql-server ×1

sql-server-2008 ×1