TIMEZONE 関数
TIMEZONE は、指定されたタイムゾーンのタイムスタンプとタイムスタンプ値を返します。
タイムゾーンの設定方法の詳細と例については、「timezone」を参照してください。
タイムゾーンの変換方法の詳細と例については、「CONVERT_TIMEZONE」を参照してください。
構文
TIMEZONE('timezone', { timestamp | timestamptz })
引数
- timezone
-
戻り値のタイムゾーン。タイムゾーンは、タイムゾーン名 (
'Africa/Kampala'
または'Singapore'
など) またはタイムゾーンの略名 ('UTC'
または'PDT'
など) として指定できます。サポートされるタイムゾーン名のリストを表示するには、次のコマンドを実行します。select pg_timezone_names();
サポートされるタイムゾーン省略形のリストを表示するには、次のコマンドを実行します。
select pg_timezone_abbrevs();
詳細な説明と例については、「タイムゾーンの使用上の注意」を参照してください。
- timestamp | timestamptz
-
TIMESTAMP 型または TIMESTAMPTZ 型となる式、あるいは暗黙的にタイムスタンプまたはタイムゾーン付きのタイムスタンプに強制変換できる値。
戻り型
TIMESTAMP 式で使用する場合は TIMESTAMPTZ。
TIMESTAMPTZ 式で使用する場合は TIMESTAMP。
例
次の場合は、PST タイムゾーンからタイムスタンプ 2008-06-17 09:44:54
を使用して UTC タイムゾーンのタイムスタンプを返します。
SELECT TIMEZONE('PST', '2008-06-17 09:44:54');
timezone ----------------------- 2008-06-17 17:44:54+00
次の場合は、UTC タイムゾーン 2008-06-17 09:44:54+00
を含むタイムスタンプを使用して PST タイムゾーンのタイムスタンプを返します。
SELECT TIMEZONE('PST', timestamptz('2008-06-17 09:44:54+00'));
timezone ----------------------- 2008-06-17 01:44:54