GETUTCDATE (Transact-SQL)
Gibt den aktuellen Timestamp des Datenbanksystems als datetime-Wert zurück. Der Zeitzonenoffset der Datenbank wird nicht einbezogen. Dieser Wert stellt die aktuelle UTC-Zeit (Coordinated Universal Time) dar. Dieser Wert wird aus dem Betriebssystem des Computers abgeleitet, auf dem die Instanz von SQL Server ausgeführt wird.
Hinweis |
---|
SYSDATETIME und SYSUTCDATETIME weisen eine höhere Genauigkeit bezüglich der Bruchteile von Sekunden auf als GETDATE und GETUTCDATE. SYSDATETIMEOFFSET schließt den Zeitzonenoffset des Systems ein. SYSDATETIME, SYSUTCDATETIME und SYSDATETIMEOFFSET können einer Variablen eines beliebigen Datums- und Zeittyps zugewiesen werden. |
Eine Übersicht über alle Datums- und Uhrzeitdatentypen und zugehörigen Funktionen von Transact-SQL finden Sie unter Datums- und Uhrzeitdatentypen und zugehörige Funktionen (Transact-SQL).
Transact-SQL-Syntaxkonventionen
Syntax
GETUTCDATE()
Rückgabetypen
datetime
Hinweise
Transact-SQL-Anweisungen können auf eine beliebige Position von GETUTCDATE verweisen, die auf einen datetime-Ausdruck verweisen kann.
GETUTCDATE ist eine nicht deterministische Funktion. Sichten und Ausdrücke, die in einer Spalte auf diese Funktion verweisen, können nicht indiziert werden.
Beispiele
In den folgenden Beispielen werden die sechs SQL Server-Systemfunktionen verwendet, die das aktuelle Datum und die aktuelle Uhrzeit wiedergeben, um das Datum, die Uhrzeit oder beides zurückzugeben. Die Werte werden der Reihe nach zurückgegeben und können sich daher in Bruchteilen von Sekunden unterscheiden.
A.Abrufen des aktuellen Systemdatums und der aktuellen Systemzeit
SELECT 'SYSDATETIME() ', SYSDATETIME();
SELECT 'SYSDATETIMEOFFSET()', SYSDATETIMEOFFSET();
SELECT 'SYSUTCDATETIME() ', SYSUTCDATETIME();
SELECT 'CURRENT_TIMESTAMP ', CURRENT_TIMESTAMP;
SELECT 'GETDATE() ', GETDATE();
SELECT 'GETUTCDATE() ', GETUTCDATE();
/* Returned:
SYSDATETIME() 2007-05-03 18:34:11.9351421
SYSDATETIMEOFFSET() 2007-05-03 18:34:11.9351421 -07:00
SYSUTCDATETIME() 2007-05-04 01:34:11.9351421
CURRENT_TIMESTAMP 2007-05-03 18:34:11.933
GETDATE() 2007-05-03 18:34:11.933
GETUTCDATE() 2007-05-04 01:34:11.933
*/
B.Abrufen des aktuellen Systemdatums
SELECT 'SYSDATETIME() ', CONVERT (date, SYSDATETIME());
SELECT 'SYSDATETIMEOFFSET()', CONVERT (date, SYSDATETIMEOFFSET());
SELECT 'SYSUTCDATETIME() ', CONVERT (date, SYSUTCDATETIME());
SELECT 'CURRENT_TIMESTAMP ', CONVERT (date, CURRENT_TIMESTAMP);
SELECT 'GETDATE() ', CONVERT (date, GETDATE());
SELECT 'GETUTCDATE() ', CONVERT (date, GETUTCDATE());
/* Returned:
SYSDATETIME() 2007-05-03
SYSDATETIMEOFFSET() 2007-05-03
SYSUTCDATETIME() 2007-05-04
CURRENT_TIMESTAMP 2007-05-03
GETDATE() 2007-05-03
GETUTCDATE() 2007-05-04
*/
C.Abrufen der aktuellen Systemzeit
SELECT 'SYSDATETIME() ', CONVERT (time, SYSDATETIME());
SELECT 'SYSDATETIMEOFFSET()', CONVERT (time, SYSDATETIMEOFFSET());
SELECT 'SYSUTCDATETIME() ', CONVERT (time, SYSUTCDATETIME());
SELECT 'CURRENT_TIMESTAMP ', CONVERT (time, CURRENT_TIMESTAMP);
SELECT 'GETDATE() ', CONVERT (time, GETDATE());
SELECT 'GETUTCDATE() ', CONVERT (time, GETUTCDATE());
/* Returned
SYSDATETIME() 18:25:01.6958841
SYSDATETIMEOFFSET() 18:25:01.6958841
SYSUTCDATETIME() 01:25:01.6958841
CURRENT_TIMESTAMP 18:25:01.6930000
GETDATE() 18:25:01.6930000
GETUTCDATE() 01:25:01.6930000
*/