OracleDatabaseを使用するときにUnixタイムスタンプを返すためのオプションは次のとおりです。
Unixタイムスタンプ(Unixエポック時間、Unix時間、またはPOSIX時間とも呼ばれます)は、1970年1月1日木曜日の00:00:00、Coordinated Universal Time(UTC)から経過した秒数です。
現在のUnixタイムスタンプを取得する
現在の日時からUnixタイムスタンプを取得する例を次に示します。
SELECT (CAST (systimestamp at time zone 'UTC' as date) - date '1970-01-01') * 86400
FROM DUAL;
結果の例:
1650253093.999999999999999999999999999998
指定されたタイムスタンプをUnixタイムスタンプに変換する
入力タイムスタンプがハードコードされた値である例を次に示します。
SELECT (
CAST(timestamp '2030-08-15 18:30:45' at time zone 'UTC' as date) - date '1970-01-01'
) * 86400
FROM DUAL;
結果:
1913074244.999999999999999999999999999997