小编Mat*_*nen的帖子

获取重叠日期范围的不同连续日期范围

我需要从重叠日期列表中获取不相互重叠的日期范围列表,并获得重叠期间的硬币总和.我试过谷歌搜索一个例子,但到目前为止没有运气.我可能没有使用正确的关键词?

我有一个重叠日期列表

1.1.2018 - 31.1.2018 80
7.1.2018 - 10.1.2018 10
7.1.2018 - 31.1.2018 10
11.1.2018 - 31.1.2018 5
25.1.2018 - 27.1.2018 5
2.2.2018 - 23.2.2018 100
Run Code Online (Sandbox Code Playgroud)

期望的结果将是

1.1.2018 - 6.7.2018 80 coins
7.1.2018 - 10.1.2018 100 coins
11.1.2018 - 24.1.2018 95 coins
25.1.2018 - 27.1.2018 100 coins
28.1.2018 - 31.1.2018 95 coins
2.2.2018 - 23.2.2018 100 coins
Run Code Online (Sandbox Code Playgroud)

这是一个如何工作的图

|------------------------------|
       |---|
       |-----------------------|
           |-------------------|
                      |---|
                                   |----------------------|
Outcome              
|------|---|----------|---|----|   |----------------------|
   80   100     95     100  95                100
Run Code Online (Sandbox Code Playgroud)

这是我的测试数据

drop table coinsonperiod2;
create table coinsonperiod2( …
Run Code Online (Sandbox Code Playgroud)

sql postgresql overlap

8
推荐指数
1
解决办法
219
查看次数

标签 统计

overlap ×1

postgresql ×1

sql ×1