0
私は指定した日付の1ヶ月前の日付を私に与える次のコードを持っています。私は以前11/30/11に以下のコードを1月の日付を取得したい場合たとえば、2011年10月31日SQL日付CONVERT
select CONVERT(DATETIME, DATEADD(d,-1,DATEADD(mm, DATEDIFF(m,0,'11-30-11'),0)), 102)
それがするように、どのように私は上記のコードを変更することができた結果が得られます私が指定したものの2ヶ月前の日付を返すので、コードに'11 -30-11 'を指定すると2011/09/30が返されますか?
私は上記のコードの仕組みを本当に理解できませんか?私は-1を-2に変更しようとしましたが、1日と1月を減算するだけで、10分の31の代わりに2011/10/30が返されます。私はそれがコードの日付よりも2ヶ月少ない、2011/09/30を返すために必要です(11-30-11)。 0と
1ヶ月のようなSQL Serverの
、おそらく単純にYYYYMMDD使用してください。あなたは "前のn月の終わり"を望んでいますか? – gbn
ちょうど前の月の最後の日を返すようにしたかった。上記のコードはうまく動作します。それは10/31/2011を返しますが、私は今、コードで指定された日付の2ヶ月前の最後の日を返す必要があります。それは完全に働いた9/30/2011 –
を返す必要があります。ありがとう! –