メインコンテンツまでスキップ
バージョン: Candidate-4.0

to_datetime_ntz

Unix タイムスタンプを DATETIME 型の値に変換します。この関数は、タイムゾーン設定に関係なく、常に UTC+0 に基づいています。

現在のタイムゾーンに基づいて Unix タイムスタンプを DATETIME 型の値に変換したい場合は、 to_datetime を使用できます。

構文

DATETIME to_datetime_ntz(BIGINT unix_ts, INT scale)

パラメータ

名前必須説明
unix_tsBIGINTはい変換する Unix タイムスタンプ。例: 1598306400 (秒) および 1598306400123 (ミリ秒)。
scaleINTいいえ時間の精度。有効な値:
  • 0 は秒 (デフォルト) を示します。
  • 3 はミリ秒を示します。
  • 6 はマイクロ秒を示します。

戻り値

  • 成功時: UTC+0 に基づく DATETIME 値を返します。
  • 失敗時: NULL を返します。一般的な理由には以下が含まれます:
    • 無効な scale (0, 3, 6 以外)
    • DATETIME 範囲外の値 (0001-01-01 から 9999-12-31)

SELECT to_datetime_ntz(1598306400);
-- 戻り値: 2020-08-24 22:00:00

SELECT to_datetime_ntz(1598306400123456, 6);
-- 戻り値: 2020-08-24 22:00:00.123456