0

我需要一种方法来计算一系列日期与数据库中已保存的其他日期的差异,即:

作为论点,我想告知以下内容:

from 15/JAN/2013 to 27/JAN/2013

在数据库/集合中,我有:

START_DATE, END_DATE
-------------------------------------------
01/JAN/2013 00:00:00, 17/JAN/2013 22:30:00
23/JAN/2013 17:00:00, 31/JAN/2013 23:59:00

回报必须是:

17/JAN/2013 22:30:01, 23/JAN/2013 16:59:59

原因:我的文件在日期范围内最多包含 4 万行。日期之间相交的文件包含相同的数据。这就是为什么我只需要在日期范围间隙中插入数据。

感谢所有可以帮助我的人!

4

3 回答 3

1
select start_gap, end_gap
from(
  select 
     end_date start_gap, 
     lead(start_date) over (order by start_date) as end_gap
  from your_table
)
where end_gap is not null; --last line is not interesting
于 2013-02-06T12:04:12.620 回答
0

问题不清楚。使用 Between 运算符:日期介于 2013 年 1 月 15 日和 2013 年 1 月 27 日之间。你会得到你的回报。

于 2013-02-06T13:06:18.587 回答
-1

尝试这个:

select START_DATE,END_DATE from tablename where START_DATE>max(START_DATE) and END_DATE<max(END_DATE)
于 2013-02-06T11:49:15.680 回答