长时间跟踪者,第一次海报(和SQL初学者).我的问题类似于这一个SQL来查找从多个重叠间隔过去的时间,除了我能够使用CTE,UDF等,我正在寻找更多的细节.
在一台大型设备上,我记录了所有出现的故障.系统的不同子组件可能出现故障,有些可能完全脱机(完全停机=是),而其他子组件则没有(完全停机=否).故障可能会在时间上重叠,如果故障尚未修复,则可能没有结束时间.
Outage_ID StartDateTime EndDateTime CompleteOutage
1 07:00 3-Jul-13 08:55 3-Jul13 Yes
2 08:30 3-Jul-13 10:00 4-Jul13 No
3 12:00 4-Jul-13 No
4 12:30 4-Jul13 12:35 4-Jul-13 No
1 |---------|
2 |---------|
3 |--------------------------------------------------------------
4 |---|
Run Code Online (Sandbox Code Playgroud)
我需要能够在用户定义的时间段内完成工作,整个系统完全正常运行多长时间(无故障),退化多长时间(一个或多个非完全中断)以及无法运行多长时间(一个或多个完整系统)停电).我还需要能够在任何给定的时间段内解决系统中出现的故障.我想在打开或关闭故障的任何时候创建一个"阶段变化"表,但我仍然坚持最好的方法 - 对这个或更好的解决方案的任何帮助将不胜感激!