カテゴリ:

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

CURRENT_TIME

システムの現在の時刻を返します。

エイリアス:

LOCALTIME

構文

CURRENT_TIME( [ <fract_sec_precision> ] )

CURRENT_TIME
Copy

引数

fract_sec_precision

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

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

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

注釈

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

戻り値

TIME 型の値を返します。

使用上の注意

  • TIMEZONE パラメーターの設定は、戻り値に影響します。返される時間は、セッションのタイムゾーンです。

  • 出力における時間の表示形式は、 TIME_OUTPUT_FORMAT セッションパラメーター(デフォルト HH24:MI:SS)によって決定されます。

  • ANSI 規格に準拠するために、この関数は SQL ステートメント内で括弧なしで呼び出すことができます。

    ただし、 Snowflake Scripting変数 を関数を呼び出す式(例えば、 my_var := <function_name>();)に設定する場合は、括弧を含める必要があります。詳細については、 コンテキスト関数の使用上の注意 をご参照ください。

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

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

ALTER SESSION SET TIME_OUTPUT_FORMAT = 'HH24:MI:SS.FF';

SELECT CURRENT_TIME(2);
Copy
+-----------------+
| CURRENT_TIME(2) |
|-----------------|
| 15:35:51.24     |
+-----------------+
SELECT CURRENT_TIME(4);
Copy
+-----------------+
| CURRENT_TIME(4) |
|-----------------|
| 15:36:53.5570   |
+-----------------+
SELECT CURRENT_TIME;
Copy
+--------------------+
| CURRENT_TIME       |
|--------------------|
| 15:37:29.644000000 |
+--------------------+