始める無料で始める

日時オフセットへの変換

SWITCHOFFSET() に加えて、TODATETIMEOFFSET() を使うと、既存の日時をオフセット付きの日時型に変換できます。開始時刻が UTC の場合は、まずタイムゾーンを補正し、その後にオフセットを付与します。タイムゾーンを補正するには、手動で時間(や分)を加算・減算します。

2016年リオデジャネイロ夏季オリンピックの閉会式は、2016年8月21日 11 PM(UTC)に始まりました。その日時を含む文字列から出発して、他の地域での時刻を確認してみましょう。アリゾナ州フェニックスの時刻は、通年で Mountain Standard Time(UTC -7)を採用しています。ツバル諸島は、UTC より12時間進んだ独自の時刻を用いています。

この演習はコースの一部です

SQL Serverで学ぶ時系列分析

コースを見る

演習の手順

  • Mountain Standard Time のアリゾナ州フェニックスの時刻(UTC -07:00)を入力します。
  • UTC より12時間進んでいるツバルの時刻を入力します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

DECLARE
	@OlympicsClosingUTC DATETIME2(0) = '2016-08-21 23:00:00';

SELECT
	-- Fill in 7 hours back and a '-07:00' offset
	___(DATEADD(HOUR, -___, @OlympicsClosingUTC), '___') AS PhoenixTime,
	-- Fill in 12 hours forward and a '+12:00' offset.
	___(DATEADD(HOUR, ___, @OlympicsClosingUTC), '___') AS TuvaluTime;
コードを編集して実行