- カテゴリ:
コンテキスト関数 (一般)
CURRENT_TIME¶
システムの現在の時刻を返します。
- エイリアス:
構文¶
CURRENT_TIME( [ <fract_sec_precision> ] )
CURRENT_TIME
引数¶
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);
+-----------------+
| CURRENT_TIME(2) |
|-----------------|
| 15:35:51.24 |
+-----------------+
SELECT CURRENT_TIME(4);
+-----------------+
| CURRENT_TIME(4) |
|-----------------|
| 15:36:53.5570 |
+-----------------+
SELECT CURRENT_TIME;
+--------------------+
| CURRENT_TIME |
|--------------------|
| 15:37:29.644000000 |
+--------------------+