我正在构建一个查询报告,其中我有多种类型的细分,优先级在一个表上,第二个表包含所有类型的细分日期,时间等。(如下所示)排名较低的细分受众群的持续时间不应考虑重叠。
请帮助我,因为我无法找出查询并根据排名获得不包括重叠的细分持续时间
table_Rank
Rank Code
1 x
2 y
3 z
4 a
5 b
6 c
7 d
8 r
9 f
Table_Segments
Code Date Start Time End Time Duration
a 18-Jul-15 17:30 17:45 0:15
c 18-Jul-15 18:00 19:00 1:00
y 18-Jul-15 18:45 19:00 0:15
a 18-Jul-15 20:15 20:20 0:05
b 18-Jul-15 23:45 1:00 1:15
z 19-Jul-15 0:30 1:15 0:45
f 19-Jul-15 2:00 3:00 1:00
我想要实现的是,在重叠情况下,对于具有更高等级的代码,应考虑重叠跨度
例如
Code Date Start Time End Time Duration
b 18-Jul-15 23:45 1:00 1:15
z 19-Jul-15 0:30 1:15 0:45
b 的实际持续时间输出应为45分钟,因为与 z 相比排名较低,而 z 应为45分钟