Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a:SQL Server
Database SQL di Azure
Istanza gestita di SQL di Azure
Azure Synapse Analytics
Endpoint di analisi SQL in Microsoft Fabric
Magazzino in Microsoft Fabric
Database SQL in Microsoft Fabric
La SYSUTCDATETIME funzione Transact-SQL (T-SQL) restituisce un valore datetimetime2 che contiene la data e l'ora del computer su cui l'istanza di SQL Server è in esecuzione. La data e l'ora vengono restituite in formato ora UTC (Coordinated Universal Time). La precisione frazionaria dei secondi può essere specificata in un intervallo da 1 a 7 cifre. La precisione predefinita è 7 cifre.
Tenere in considerazione:
SYSDATETIMEeSYSUTCDATETIMEhanno una precisione di secondi frazionari maggiore diGETDATEeGETUTCDATE.SYSDATETIMEOFFSETinclude l'offset del fuso orario di sistema.SYSDATETIME,SYSUTCDATETIMEeSYSDATETIMEOFFSETpossono essere assegnati a una variabile di uno dei tipi di data e ora.
Per una panoramica di tutti i tipi di dati e le funzioni di data e ora Transact-SQL, vedere Funzioni e tipi di dati di data e ora.
Convenzioni relative alla sintassi Transact-SQL
Syntax
SYSUTCDATETIME ( )
Tipi restituiti
datetime2
Remarks
Transact-SQL istruzioni possono fare riferimento a SYSUTCDATETIME qualsiasi punto in cui possano fare riferimento a un'espressione datetime2 .
SYSUTCDATETIME è una funzione non deterministica. Le viste e le espressioni che fanno riferimento a questa funzione in una colonna non possono essere indicizzate.
Note
SQL Server ottiene i valori di data e ora usando l'API GetSystemTimeAsFileTime() Windows. L'accuratezza dipende dall'hardware e dalla versione di Windows del computer in cui è in esecuzione l'istanza di SQL Server. La precisione di tale API è fissata sul valore di 100 nanosecondi. L'accuratezza può essere determinata usando l'API GetSystemTimeAdjustment() di Windows.
Examples
Negli esempi seguenti vengono usate le sei funzioni di sistema di SQL Server che restituiscono data e ora corrente per restituire la data, l'ora o entrambe. I valori sono restituiti in serie. Pertanto, i secondi frazionari potrebbero essere diversi.
A. Mostra i formati restituiti dalle funzioni di data e ora
Nell'esempio seguente vengono illustrati i diversi formati restituiti dalle funzioni di data e ora.
SELECT SYSDATETIME(),
SYSDATETIMEOFFSET(),
SYSUTCDATETIME(),
CURRENT_TIMESTAMP,
GETDATE(),
GETUTCDATE(),
CURRENT_DATE;
Il set di risultati è il seguente.
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. Convertire data e ora in data
Nell'esempio seguente viene illustrato come convertire i valori di data e ora nel tipo di dati date .
SELECT CONVERT (DATE, SYSDATETIME()),
CONVERT (DATE, SYSDATETIMEOFFSET()),
CONVERT (DATE, SYSUTCDATETIME()),
CONVERT (DATE, CURRENT_TIMESTAMP),
CONVERT (DATE, GETDATE()),
CONVERT (DATE, GETUTCDATE()),
CURRENT_DATE;
Il set di risultati è il seguente.
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. Convertire i valori di data e ora in ora
Nell'esempio seguente viene illustrato come convertire i valori di data e ora nel tipo di dati time .
SELECT CONVERT (TIME, SYSDATETIME()),
CONVERT (TIME, SYSDATETIMEOFFSET()),
CONVERT (TIME, SYSUTCDATETIME()),
CONVERT (TIME, CURRENT_TIMESTAMP),
CONVERT (TIME, GETDATE()),
CONVERT (TIME, GETUTCDATE());
Il set di risultati è il seguente.
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