VARCHAR型の値を、Flinkランタイム環境に対応する特定のタイムゾーンのTIMESTAMP型に変換します。
構文
TIMESTAMP TO_TIMESTAMP_TZ(VARCHAR date, VARCHAR timezone)
TIMESTAMP TO_TIMESTAMP_TZ(VARCHAR date, VARCHAR format, VARCHAR timezone)入力パラメーター
パラメーター | データ型 | 説明 |
date | VARCHAR | VARCHAR型の入力日付。 |
format | VARCHAR | 入力日付の形式。デフォルト値:yyyy-MM-dd HH:mm:ss。 |
timezone | VARCHAR | 入力日付のタイムゾーン(Asia/Shanghaiなど)。 説明 非標準のタイムゾーンに設定されている場合、パラメーターはデフォルトでUTCになります。 |
例
説明
この例では、Flinkが動作するローカルシステムのタイムゾーンはAsia/Shanghai(GMT+8)です。
テストデータ
テーブル T1
timestamp1(VARCHAR)
format1(VARCHAR)
timezone1(VARCHAR)
1970-01-01 00:00:00
yyyy-MM-dd HH:mm:ss
/
timestamp2(VARCHAR)
format2(VARCHAR)
timezone2(VARCHAR)
1970-01-01 00:00:00
yyyy-MM-dd HH:mm:ss
Asia/Shanghai
timestamp3(VARCHAR)
format3(VARCHAR)
timezone3(VARCHAR)
1970-01-01 00:00:00
yyyy-MM-dd HH:mm:ss
America/New_York
テストステートメント
SELECT TO_TIMESTAMP_TZ(timestamp1, timezone1) AS var1, TO_TIMESTAMP_TZ(timestamp2, format2, timezone2) AS var2, TO_TIMESTAMP_TZ(timestamp3, format3, timezone3) AS var3 FROM T1;テスト結果
var1(VARCHAR)
var2(VARCHAR)
var3(VARCHAR)
1970-01-01 08:00:00
1970-01-01 00:00:00
1970-01-01 13:00:00