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

理由: 日付の範囲に最大 40,000 行を含むファイルがあります。日付間で交差するファイルには、同じデータが含まれています。これが、日付範囲のギャップにデータのみを挿入する必要がある理由です。

私を助けてくれたみんなに感謝します!

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

質問は不明確です。演算子間で使用: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 に答える