Kategorien:

Kontextfunktionen (Allgemein)

CURRENT_TIME

Gibt die aktuelle Zeit für das System zurück.

Aliasse:

LOCALTIME

Syntax

CURRENT_TIME( [ <fract_sec_precision> ] )

CURRENT_TIME
Copy

Argumente

fract_sec_precision

Dieses optionale Argument gibt die Genauigkeit an, mit der die Uhrzeit gemeldet werden soll. Bei einem Wert von 3 werden beispielsweise 3 Nachkommastellen verwendet (d. h. die Zeit wird mit einer Genauigkeit von Millisekunden angegeben).

Die Standardgenauigkeit ist 9 (Nanosekunden).

Gültige Werte liegen zwischen 0 und 9. Die meisten Plattformen unterstützen jedoch keine echte Nanosekundengenauigkeit. Die Genauigkeit, die Sie erhalten, ist möglicherweise geringer als die von Ihnen angegebene Genauigkeit. In der Praxis liegt die Genauigkeit meist höchstens im Millisekundenbereich (3 Stellen).

Bemerkung

  • Sekundenbruchteile werden nur angezeigt, wenn sie explizit im Parameter TIME_OUTPUT_FORMAT für die Sitzung festgelegt worden sind (z. B. 'HH24:MI:SS.FF').

Rückgabewerte

Gibt einen Wert vom Typ TIME zurück.

Nutzungshinweise

  • Die Einstellung des Parameters TIMEZONE wirkt sich auf den Rückgabewert aus. Der zurückgegebene Zeitangabe wird in der Zeitzone der Sitzung angegeben.

  • Das Anzeigeformat für Zeitwerte in der Ausgabe wird durch den Sitzungsparameter TIME_OUTPUT_FORMAT bestimmt (Standard: HH24:MI:SS).

  • Zur Erfüllung der ANSI-Standards kann diese Funktion in SQL-Anweisungen ohne Klammern aufgerufen werden.

    Wenn Sie jedoch eine Snowflake Scripting Variable für einen Ausdruck festlegen, der die Funktion aufruft (z. B. my_var := <function_name>();), müssen Sie die Klammern einschließen. Weitere Informationen finden Sie unter in den Nutzungshinweisen für Kontextfunktionen.

  • Verwenden Sie den zurückgegebenen Wert nicht für eine genaue zeitliche Reihenfolge zwischen gleichzeitigen Abfragen (die vom selben virtuellen Warehouse verarbeitet werden), da die Abfragen möglicherweise von verschiedenen Computeressourcen (im Warehouse) verarbeitet werden.

Beispiele

Setzen Sie das Zeitausgabeformat auf HH24:MI:SS.FF, und geben Sie dann die aktuelle Uhrzeit mit einer Genauigkeit der Sekundenbruchteile von 2, dann 4 und anschließend 9 (dem Standard) zurück:

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 |
+--------------------+