メニュー
Amazon Redshift
データベース開発者ガイド (API Version 2012-12-01)

timezone

値 (デフォルトは太字)

UTC、タイムゾーン

構文

Copy
SET timezone { TO | = } [ time_zone | DEFAULT ] SET time zone [ time_zone | DEFAULT ]

説明

現在のセッションのタイムゾーンを設定します。タイムゾーンは、協定世界時 (UTC) またはタイムゾーン名からのオフセットにすることができます。

注記

クラスターパラメータグループを使用して timezone 設定パラメータを設定することはできません。タイムゾーンは、SET コマンドを使用して現在のセッションに設定するか、ALTER USER コマンドを使用して特定のデータベースユーザーによるすべてのセッション実行に設定することのみできます。

TO または = を含む SET timezone (1 語) コマンドを使用してタイムゾーンを設定する場合、以下に示すように、time_zone をタイムゾーン名、POSIX スタイル形式のオフセット、または ISO-8601 形式のオフセットとして指定できます。

Copy
SET timezone { TO | = } time_zone

TO または =含まない SET タイムゾーンコマンドを使用してタイムゾーンを設定する場合、以下に示すように、INTERVAL とタイムゾーン名、POSIX スタイル形式のオフセット、または ISO-8601 形式のオフセットを使用して time_zone を指定できます。

Copy
SET time zone time_zone

タイムゾーン形式

Amazon Redshift では、以下のタイムゾーン形式がサポートされます。

  • タイムゾーンの名前

  • INTERVAL

  • POSIX スタイルのタイムゾーン指定

  • ISO-8601 オフセット

タイムゾーンの省略形 (PST や PDT など) は、UTC からの固定オフセットとして定義されており、夏時間ルールは含まれていないため、SET コマンドではタイムゾーンの省略形がサポートされていません。

タイムゾーン形式の詳細については、以下を参照してください。

タイムゾーン名 – America/New_York などのフルタイムゾーン名。フルタイムゾーン名には、夏時間ルールを含めることができます。

タイムゾーン名の例を以下に示します。

  • Etc/Greenwich

  • America/New_York

  • CST6CDT

  • GB

注記

EST、MST、NZ、UCT などの多くのタイムゾーン名も省略形です。

有効なタイムゾーン名のリストを表示するには、次のコマンドを実行します。

Copy
select pg_timezone_names();

INTERVAL – UTC からのオフセット。たとえば、PST は –8:00、つまり –8 時間です。

INTERVAL タイムゾーンオフセットの例を以下に示します。

  • –8:00

  • –8 時間

  • 30 分

POSIX スタイルの形式STDoffset または STDoffsetDST 形式でのタイムゾーン指定。STD はタイムゾーンの省略形、offset は UTC から西方向への時間数の数値オフセット、DST はオプションの夏時間ゾーン省略形です。夏時間は、特定のオフセットより 1 時間早いことを前提としています。

POSIX スタイルのタイムゾーン形式では、グリニッジから西方向に正のオフセットが使用されます。これは、グリニッジから東方向に正のオフセットを使用する ISO-8601 規則とは対照的です。

POSIX スタイルのタイムゾーンの例を以下に示します。

  • PST8

  • PST8PDT

  • EST5

  • EST5EDT

注記

Amazon Redshift は、POSIX スタイルのタイムゾーン指定を検証しないため、タイムゾーンを無効な値に設定する可能性があります。たとえば、次のコマンドはタイムゾーンを無効な値に設定しますが、エラーを返しません。

Copy
set timezone to ‘xxx36’;

ISO-8601 オフセット±[hh]:[mm] 形式の UTC からのオフセット。

ISO-8601 オフセットの例を以下に示します。

  • -8:00

  • +7:30

次の例では、現在のセッションのタイムゾーンを New York に設定します。

Copy
set timezone = 'America/New_York';

次の例では、現在のセッションのタイムゾーンを UTC–8 (PST) に設定します。

Copy
set timezone to '-8:00';

次の例では、INTERVAL を使用してタイムゾーンを PST に設定します。

Copy
set timezone interval '-8 hours'

次の例では、現在のセッションのタイムゾーンをシステムデフォルトのタイムゾーン (UTC) に設定します。

Copy
set timezone to default;