私は現在の日付時刻から5時間30分を引いた5.5の時差値を取得します。現在の時刻にオフセットを追加する
select Dateadd(HH, -5.5,GETUTCDATE()),GETUTCDATE()
出力では、5時間しか減算されません。 タイムゾーンに応じて、このオフセット5.5または13.5の形式で値が得られます。
これは可能ですか?算術演算は、常に全体の単位で機能
私は現在の日付時刻から5時間30分を引いた5.5の時差値を取得します。現在の時刻にオフセットを追加する
select Dateadd(HH, -5.5,GETUTCDATE()),GETUTCDATE()
出力では、5時間しか減算されません。 タイムゾーンに応じて、このオフセット5.5または13.5の形式で値が得られます。
これは可能ですか?算術演算は、常に全体の単位で機能
私はいつもこの形式の値は、時間帯に応じて、同様に5.5または13.5をオフセットます。..
次に、あなたが60で値を乗算し、minute
日付要素
select Dateadd(MINUTE, -5.5 * 60,GETUTCDATE())
時間 - あなたは-5.5がオフに切り捨てされていることを見つけることができる - その代わり
select Dateadd(MINUTE, -330,GETUTCDATE()),GETUTCDATE()
関数への入力は、整数(整数)であることが意図されている-330分を使用小数部分
はいこれは可能です。まず、小数点のオフセットを分に変換する必要があります。これで、前と同じようにDATEADDを使用できます。
DECLARE @Offset DECIMAL(18, 2) = 5.5;
DECLARE @Mins INT = 60 * @Offset;
-- Offsetting by decimal time values.
SELECT
DATEADD(MINUTE, @Mins, GETDATE())
;