SYSDATETIMEOFFSET (Transact-SQL)
Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
Gibt einen datetimeoffset(7)-Wert zurück, der das Datum und die Uhrzeit des Computers enthält, auf dem die Instanz von SQL Server ausgeführt wird. Der Zeitzonenoffset wird einbezogen.
Eine Übersicht über alle Datums- und Uhrzeitdatentypen und zugehörigen Funktionen für Transact-SQL finden Sie unter Datums- und Uhrzeitdatentypen und zugehörige Funktionen (Transact-SQL).
Transact-SQL-Syntaxkonventionen
Syntax
SYSDATETIMEOFFSET ( )
Rückgabetyp
datetimeoffset(7)
Hinweise
Transact-SQL-Anweisungen können auf eine beliebige Position von SYSDATETIMEOFFSET verweisen, die sie an einen datetimeoffset-Ausdruck weiterleiten können.
SYSDATETIMEOFFSET ist eine nicht deterministische Funktion. Sichten und Ausdrücke, die in einer Spalte auf diese Funktion verweisen, können nicht indiziert werden.
Hinweis
SQL Server ruft die Datums- und Zeitwerte mithilfe der GetSystemTimeAsFileTime()-Windows-API ab. Die Genauigkeit hängt von der Computerhardware und der Windows-Version ab, unter der die Instanz von SQL Server ausgeführt wird. Die Genauigkeit dieser API liegt bei 100 Nanosekunden. Die Genauigkeit kann mithilfe der GetSystemTimeAdjustment()-Windows-API festgestellt werden.
Beispiele
In den folgenden Beispielen werden die sechs SQL Server-Systemfunktionen verwendet, die das aktuelle Datum, die aktuelle Uhrzeit oder beides zurückgeben. Die Werte werden der Reihe nach zurückgegeben und können sich daher in Bruchteilen von Sekunden unterscheiden.
A. Anzeigen der Formate, die von den Datums- und Uhrzeitfunktionen zurückgegeben werden
Das folgende Beispiel zeigt verschiedene Formatwerte, die von den Datums- und Zeitfunktionen zurückgegeben werden.
SELECT SYSDATETIME() AS [SYSDATETIME()]
,SYSDATETIMEOFFSET() AS [SYSDATETIMEOFFSET()]
,SYSUTCDATETIME() AS [SYSUTCDATETIME()]
,CURRENT_TIMESTAMP AS [CURRENT_TIMESTAMP]
,GETDATE() AS [GETDATE()]
,GETUTCDATE() AS [GETUTCDATE()];
Hier sehen Sie das Ergebnis.
SYSDATETIME() 2007-04-30 13:10:02.0474381
SYSDATETIMEOFFSET()2007-04-30 13:10:02.0474381 -07:00
SYSUTCDATETIME() 2007-04-30 20:10:02.0474381
CURRENT_TIMESTAMP 2007-04-30 13:10:02.047
GETDATE() 2007-04-30 13:10:02.047
GETUTCDATE() 2007-04-30 20:10:02.047
B. Konvertieren von Datums- und Uhrzeitwerten in date
Das folgende Beispiel zeigt, wie Sie Datums- und Uhrzeitwerte in date
konvertieren.
SELECT CONVERT (date, SYSDATETIME())
,CONVERT (date, SYSDATETIMEOFFSET())
,CONVERT (date, SYSUTCDATETIME())
,CONVERT (date, CURRENT_TIMESTAMP)
,CONVERT (date, GETDATE())
,CONVERT (date, GETUTCDATE());
Hier sehen Sie das Ergebnis.
2007-04-30
2007-04-30
2007-04-30
2007-04-30
2007-04-30
2007-04-30
C. Konvertieren von Datums- und Uhrzeitwerten in Uhrzeitwerte
Das folgende Beispiel zeigt, wie Sie Datums- und Uhrzeitwerte in time
konvertieren.
SELECT CONVERT (time, SYSDATETIME()) AS [SYSDATETIME()]
,CONVERT (time, SYSDATETIMEOFFSET()) AS [SYSDATETIMEOFFSET()]
,CONVERT (time, SYSUTCDATETIME()) AS [SYSUTCDATETIME()]
,CONVERT (time, CURRENT_TIMESTAMP) AS [CURRENT_TIMESTAMP]
,CONVERT (time, GETDATE()) AS [GETDATE()]
,CONVERT (time, GETUTCDATE()) AS [GETUTCDATE()];
Hier sehen Sie das Ergebnis.
SYSDATETIME() 13:18:45.3490361
SYSDATETIMEOFFSET()13:18:45.3490361
SYSUTCDATETIME() 20:18:45.3490361
CURRENT_TIMESTAMP 13:18:45.3470000
GETDATE() 13:18:45.3470000
GETUTCDATE() 20:18:45.3470000
Weitere Informationen
CAST und CONVERT (Transact-SQL)
Datums- und Uhrzeitdatentypen und zugehörige Funktionen (Transact-SQL)