Megosztás a következőn keresztül:


SYSDATETIME (Transact-SQL)

A következőkre vonatkozik:SQL ServerAzure SQL DatabaseFelügyelt Azure SQL-példányAzure Synapse AnalyticsElemzési platformrendszer (PDW)SQL Analytics-végpont a Microsoft FabricbenRaktár a Microsoft FabricbenSQL-adatbázis a Microsoft Fabricben

Visszaad egy datetime2(7) értéket, amely tartalmazza annak a számítógépnek a dátumát és idejét, amelyen az SQL Server példánya fut.

Megjegyzés:

A SYSDATETIME és a SYSUTCDATETIME törtmásodperces pontossággal rendelkezik, mint a GETDATE és a GETUTCDATE. A SYSDATETIMEOFFSET tartalmazza a rendszer időzóna eltérését. A SYSDATETIME, SYSUTCDATETIME és SYSDATETIMEOFFSET bármely date és time típusú változóhoz rendelhetők.

Az Azure SQL Database (kivéve Azure SQL Managed Instance) és Azure Synapse Analytics követi az UTC-t. Ha nem UTC időzónában kell értelmezni a dátum- és időinformációt, használd az AT TIME ZONE vagy Azure Synapse Analytics programokat.

Az összes Transact-SQL dátum- és időadattípus és -függvény áttekintése: Dátum- és időadattípusok és függvények (Transact-SQL).

Transact-SQL szintaxis konvenciók

Szemantika

SYSDATETIME ( )  

Visszatérési típus

datetime2(7)

Megjegyzések

Transact-SQL utasítások bárhol hivatkozhatnak a SYSDATETIME-ra, ahol datetime2(7) kifejezésre hivatkozhatnak.

A SYSDATETIME egy nem determinisztikus függvény. Az oszlopban hivatkozó nézetek és kifejezések nem indexelhetők.

Megjegyzés:

Az SQL Server a GetSystemTimeAsFileTime() Windows API segítségével szerezi meg a dátum- és időértékeket. A pontosság attól függ, hogy a Windows melyik számítógép hardverén és verzióján fut az SQL Server példánya. Ennek az API-nak a pontossága 100 nanoszekundumon van rögzítve. A pontosság a GetSystemTimeAdjustment() Windows API segítségével határozható meg.

Példák

Az alábbi példák a hat SQL Server rendszerfunkciót használják, amelyek visszaadják az aktuális dátumot és az időt, hogy visszaadja a dátumot, az időt vagy mindkettőt. Az értékek sorozatban jelennek meg; ezért a tört másodpercük eltérő lehet.

A. A jelenlegi rendszer dátumának és időpontjának megszerzése

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. A jelenlegi rendszer dátumának megszerzése

SELECT CONVERT (date, SYSDATETIME())  
    ,CONVERT (date, SYSDATETIMEOFFSET())  
    ,CONVERT (date, SYSUTCDATETIME())  
    ,CONVERT (date, CURRENT_TIMESTAMP)  
    ,CONVERT (date, GETDATE())  
    ,CONVERT (date, GETUTCDATE());  
  
/* All returned 2007-04-30 */  

C. A jelenlegi rendszer idő megszerzése

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

Példák: Azure Synapse Analytics and Analytics Platform System (PDW)

D: A jelenlegi rendszer dátumának és időpontjának megszerzése

SELECT SYSDATETIME();  

Itt van az eredmények összessége.

--------------------------  
7/20/2013 2:49:59 PM

Lásd még:

CAST és CONVERT (Transact-SQL)
Dátum és idő adattípusok és függvények (Transact-SQL)