2つの日付列Date1
とDate2
があります。私は、新しい列を作成したい:SQL Serverの2つの列の日付と次の最小の日付の比較
新しい列
NewDate1
:Date2
にその値よりも大きいとget次の最小値にDate1
'1994-03-31 00:00:00'
から最初の行を使用して新しい列
NewDate2
:Date2
から最初の行を使用して'1995-01-12 00:00:00'
をDate1
の値より大きくして次の最小値を取得します。
サンプルデータ:
Date1 Date2
--------------------- ---------------------
'1994-03-31 00:00:00' '1995-01-12 00:00:00'
'1994-03-31 19:27:00' '1995-04-13 00:00:00'
'1995-01-12 00:00:00' '1995-04-13 09:29:00'
'1995-04-13 00:00:00' '1997-01-12 09:59:00'
'1995-04-13 09:29:00' '1999-07-19 00:00:00'
'2008-04-04 00:00:00' '2009-08-06 00:00:00'
'2011-11-04 00:00:00' '2013-04-01 00:00:00'
'2013-04-01 00:00:00' NULL
私はこのようにしたい:
NewDate1 NewDate2
--------------------- ---------------------
'1994-03-31 00:00:00' '1995-01-12 00:00:00'
'1995-01-12 00:00:00' '1995-04-13 00:00:00'
'1995-04-13 00:00:00' '1995-04-13 09:29:00'
'1995-04-13 09:29:00' '1997-01-12 09:59:00'
'2008-04-04 00:00:00' '2009-06-22 00:00:00'
'2011-11-04 00:00:00' '2013-04-01 00:00:00'
'2013-04-01 00:00:00' NULL
正確にあなたの質問は何ですか事前
どのような新しい列ですか?あなたは行を失ったようだ。 –
私はLAG()とLEAD()が何をするのかを調べることをお勧めします。 – ZLK
そこに行ったように見えるのは、Date1をNewDate1にコピーして行を削除したことだけです。それを説明したり、説明的なデータを投稿したりできますか?あなたの説明を読んで、私があなたが与えたデータによって説明されていないことをしたいと思うように思えます。 – Cato