小编Rob*_*oby的帖子

如何编写Oracle查询以查找可能重叠的from-to日期的总长度

我很难找到以下任务的查询

我有以下数据,想要查找每个唯一ID的总网络日

ID  From        To          NetworkDay
1   03-Sep-12   07-Sep-12   5
1   03-Sep-12   04-Sep-12   2
1   05-Sep-12   06-Sep-12   2
1   06-Sep-12   12-Sep-12   5
1   31-Aug-12   04-Sep-12   3
2   04-Sep-12   06-Sep-12   3
2   11-Sep-12   13-Sep-12   3
2   05-Sep-12   08-Sep-12   3
Run Code Online (Sandbox Code Playgroud)

问题是日期范围可能重叠,我无法想出能给我以下结果的SQL

ID  From        To          NetworkDay
1   31-Aug-12   12-Sep-12   9
2   04-Sep-12   08-Sep-12   4
2   11-Sep-12   13-Sep-12   3
Run Code Online (Sandbox Code Playgroud)

然后

ID  Total Network Day
1   9
2   7
Run Code Online (Sandbox Code Playgroud)

如果无法进行网络日计算,只需到第二个表即可.

希望我的问题很明确

sql oracle

10
推荐指数
1
解决办法
1187
查看次数

标签 统计

oracle ×1

sql ×1