カテゴリ:

コンテキスト関数 (一般)

CURRENT_TIMESTAMP

システムの現在のタイムスタンプを返します。

エイリアス:

LOCALTIMESTAMP、 GETDATE、 SYSTIMESTAMP

構文

CURRENT_TIMESTAMP( [ <fract_sec_precision> ] )

CURRENT_TIMESTAMP
Copy

引数

fract_sec_precision

このオプションの引数は、時間を報告する精度を示します。たとえば、3の値は、小数点の後の3桁を使用します(つまり、ミリ秒の精度で時間を指定することを意味します)。

デフォルトの精度は9(ナノ秒)です。

有効な値の範囲は0~9です。ただし、ほとんどのプラットフォームは真のナノ秒精度をサポートしていません。取得する精度は、指定した精度よりも低い場合があります。実際には、精度は通常最大で約ミリ秒(3桁)です。

注釈

  • 秒の小数部は、セッションの TIME_OUTPUT_FORMAT パラメーターで明示的に設定されている場合(例: 'HH24:MI:SS.FF')にのみ表示されます。

戻り値

ローカルタイムゾーンの現在のタイムスタンプを返します。

使用上の注意

  • TIMEZONE セッションパラメーターの設定は戻り値に影響します。

  • TIMESTAMP_TYPE_MAPPING パラメーターの設定は、戻り値に影響を 与えません

  • ANSI 標準に準拠するために、この関数は括弧なしで呼び出すことができます。

  • クエリは異なるコンピューティングリソース(ウェアハウス内)によって処理される可能性があるため、同時クエリ(同じ仮想ウェアハウスで処理)間の正確な時間の順序付けに戻り値を使用しないでください。

  • エイリアス SYSTIMESTAMP および GETDATE は、次の点で CURRENT_TIMESTAMP と異なります。

    • fract_sec_precision パラメーターのサポートなし。

    • これらの関数で括弧なしの呼び出しは不可。

時間出力形式を YYYY-MM-DD HH24:MI:SS.FF に設定し、最初に2、4、次にデフォルト(9)に設定した小数秒精度で現在のタイムスタンプを返します。

ALTER SESSION SET TIMESTAMP_OUTPUT_FORMAT = 'YYYY-MM-DD HH24:MI:SS.FF';

SELECT CURRENT_TIMESTAMP(2);

+------------------------+
| CURRENT_TIMESTAMP(2)   |
|------------------------|
| 2017-04-26 22:37:22.83 |
+------------------------+

SELECT CURRENT_TIMESTAMP(4);

+--------------------------+
| CURRENT_TIMESTAMP(4)     |
|--------------------------|
| 2017-04-26 22:37:25.3530 |
+--------------------------+

SELECT CURRENT_TIMESTAMP;

+-------------------------------+
| CURRENT_TIMESTAMP             |
|-------------------------------|
| 2017-04-26 22:37:28.188000000 |
+-------------------------------+
Copy