最終日の 23:00 に 1 日が始まる要件に取り組んでいます。SQL関数に渡された日付の開始日時を取得する必要があります。カスタムの開始時刻 (つまり 23:00) とoffset = -1
(前日開始を意味する) をテーブルに保存しています。
たとえば、私が合格した場合:
10/30/2013 22:00
それは戻るべきです10/29/2013 23:00
10/30/2013 23:20
それは戻るべきです10/30/2013 23:00
10/31/2013 01:00
それは戻るべきです10/30/2013 23:00
現在、次のステートメントを使用しています:(DayStartOffset = -1 and DayStartTime = 23:00:00)
declare @datetime datetime
set @datetime = '2013-10-30 23:59:59'
declare @date date
declare @time time(3)
set @date = @datetime
set @time = @datetime
declare @dayStartDateTime datetime
--DayStartOffset is set to -1
--DayStartTime set to '23:00'
SELECT @dayStartDateTime = DATEADD(dd,DayStartOffset,CAST(@date AS DATETIME)) + CAST(DayStartTime AS DATETIME)
from table_name
print @dayStartDateTime
しかし、上記の 1 と 3 などでは正しく動作しません。
この機能について教えてください。