Freigeben über


CURRENT_TIMESTAMP (Transact-SQL)

Gibt den aktuellen Timestamp des Datenbanksystems ohne den Zeitzonenoffset der Datenbank als datetime-Wert zurück. Dieser Wert wird aus dem Betriebssystem des Computer abgeleitet, auf dem die Instanz von SQL Server ausgeführt wird.

Hinweis

SYSDATETIME und SYSUTCDATE 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, SYSUTCDATE und SYSDATETIMEOFFSET können einer Variablen eines beliebigen Datums- und Zeittyps zugewiesen werden.

Diese Funktion ist die ANSI SQL-Entsprechung zu GETDATE.

Eine Übersicht über alle Datums- und Uhrzeitdatentypen und zugehörige Funktionen für Transact-SQL finden Sie unter Datums- und Zeitdatentypen und zugehörige Funktionen.

Gilt für: SQL Server (SQL Server 2008 bis aktuelle Version), Windows Azure SQL-Datenbank (Ursprüngliche Version bis aktuelle Version).

Themenlink (Symbol) Transact-SQL-Syntaxkonventionen

Syntax

CURRENT_TIMESTAMP

Argumente

  • Besitzt keine Argumente.

Rückgabetyp

datetime

Hinweise

Transact-SQL-Anweisungen können auf eine beliebige Position von CURRENT_TIMESTAMP verweisen, die auf einen datetime-Ausdruck verweisen kann.

CURRENT_TIMESTAMP ist eine nicht deterministische Funktion. Sichten und Ausdrücke, die auf diese Spalte 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()
    ,SYSDATETIMEOFFSET()
    ,SYSUTCDATETIME()
    ,CURRENT_TIMESTAMP
    ,GETDATE()
    ,GETUTCDATE();
/* Returned:
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.Abrufen des aktuellen Systemdatums

SELECT CONVERT (date, SYSDATETIME())
    ,CONVERT (date, SYSDATETIMEOFFSET())
    ,CONVERT (date, SYSUTCDATETIME())
    ,CONVERT (date, CURRENT_TIMESTAMP)
    ,CONVERT (date, GETDATE())
    ,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 CONVERT (time, SYSDATETIME())
    ,CONVERT (time, SYSDATETIMEOFFSET())
    ,CONVERT (time, SYSUTCDATETIME())
    ,CONVERT (time, CURRENT_TIMESTAMP)
    ,CONVERT (time, GETDATE())
    ,CONVERT (time, GETUTCDATE());

/* Returned
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
*/

Siehe auch

Verweis

CAST und CONVERT (Transact-SQL)