SYSDATETIMEOFFSET (Transact-SQL)

van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsSQL-database in Microsoft Fabric

De SYSDATETIMEOFFSET Transact-SQL (T-SQL)-functie geeft een datetimeoffset(7)-waarde terug die de datum en tijd bevat van de computer waarop de instantie van SQL Server draait. De tijdzone-offset is inbegrepen.

Zie Datum- en tijdgegevenstypen en -functies voor een overzicht van alle Transact-SQL datum- en tijdgegevenstypen en -functies.

Transact-SQL syntaxis-conventies

Syntaxis

SYSDATETIMEOFFSET ( )

Retourtypen

datetimeoffset(7)

Opmerkingen

Transact-SQL statements kunnen overal verwijzen naar SYSDATETIMEOFFSET waar ze kunnen verwijzen naar een datetimeoffset-expressie .

SYSDATETIMEOFFSET is een niet-deterministische functie. Weergaven en expressies die naar deze functie in een kolom verwijzen, kunnen niet worden geïndexeerd.

Opmerking

SQL Server verkrijgt de datum- en tijdwaarden door gebruik te maken van de GetSystemTimeAsFileTime() Windows API. De nauwkeurigheid is afhankelijk van de computerhardware en -versie van Windows waarop het exemplaar van SQL Server wordt uitgevoerd. De precisie van deze API is opgelost op 100 nanoseconden. De nauwkeurigheid kan worden bepaald met behulp van de GetSystemTimeAdjustment() Windows API.

Voorbeelden

In de volgende voorbeelden worden de zes SQL Server-systeemfuncties gebruikt die de huidige datum en tijd retourneren om de datum, tijd of beide te retourneren. De waarden worden geretourneerd in reeksen; daarom kunnen de fractionele seconden anders zijn.

Eén. De notaties weergeven die worden geretourneerd door de datum- en tijdfuncties

In het volgende voorbeeld ziet u de verschillende indelingen die worden geretourneerd door de datum- en tijdfuncties.

SELECT SYSDATETIME(),
       SYSDATETIMEOFFSET(),
       SYSUTCDATETIME(),
       CURRENT_TIMESTAMP,
       GETDATE(),
       GETUTCDATE(),
       CURRENT_DATE;

Hier is het resultatenoverzicht.

SYSDATETIME()        2026-09-01 16:15:37.7418724
SYSDATETIMEOFFSET()  2026-09-01 16:15:37.7418724 -06:00
SYSUTCDATETIME()     2026-09-01 22:15:37.7418724
CURRENT_TIMESTAMP    2026-09-01 16:15:37.740
GETDATE()            2026-09-01 16:15:37.740
GETUTCDATE()         2026-09-01 22:15:37.740
CURRENT_DATE         2026-09-01

B. Datum en tijd converteren naar datum

Het volgende voorbeeld laat zien hoe je datum- en tijdwaarden kunt omzetten naar date.

SELECT CONVERT (DATE, SYSDATETIME()),
       CONVERT (DATE, SYSDATETIMEOFFSET()),
       CONVERT (DATE, SYSUTCDATETIME()),
       CONVERT (DATE, CURRENT_TIMESTAMP),
       CONVERT (DATE, GETDATE()),
       CONVERT (DATE, GETUTCDATE()),
       CURRENT_DATE;

Hier is het resultatenoverzicht.

SYSDATETIME()        2026-09-01
SYSDATETIMEOFFSET()  2026-09-01
SYSUTCDATETIME()     2026-09-01
CURRENT_TIMESTAMP    2026-09-01
GETDATE()            2026-09-01
GETUTCDATE()         2026-09-01
CURRENT_DATE         2026-09-01

C. Zet datum en tijd om naar tijden

Het volgende voorbeeld laat zien hoe je datum- en tijdwaarden kunt omzetten naar time.

SELECT CONVERT (TIME, SYSDATETIME()),
       CONVERT (TIME, SYSDATETIMEOFFSET()),
       CONVERT (TIME, SYSUTCDATETIME()),
       CONVERT (TIME, CURRENT_TIMESTAMP),
       CONVERT (TIME, GETDATE()),
       CONVERT (TIME, GETUTCDATE());

Hier is het resultatenoverzicht.

SYSDATETIME()        16:15:37.7418724
SYSDATETIMEOFFSET()  16:15:37.7418724
SYSUTCDATETIME()     22:15:37.7418724
CURRENT_TIMESTAMP    16:15:37.740
GETDATE()            16:15:37.740
GETUTCDATE()         22:15:37.740