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 SYSDATETIME funzione Transact-SQL (T-SQL) restituisce un valore datetime2(7) che contiene la data e l'ora del computer su cui l'istanza di SQL Server è in esecuzione.
Nota
SYSDATETIME e SYSUTCDATETIME hanno una precisione di secondi frazionari maggiore di GETDATE e GETUTCDATE.
SYSDATETIMEOFFSET include l'offset del fuso orario di sistema.
SYSDATETIME, SYSUTCDATETIME, e SYSDATETIMEOFFSET possono essere assegnate a una variabile di uno qualsiasi tipo di data e ora.
Azure Synapse Analytics segue UTC. Usa AT TIME ZONE in Azure Synapse Analytics se devi interpretare informazioni di data e ora in un fuso orario non UTC.
Nota
database SQL di Azure e SQL Database in Microsoft Fabric supportano la modifica del fuso orario predefinito da tempo coordinato universale (UTC). Se modifichi il fuso orario a livello di database o sessione , questa funzione restituisce l'ora locale in base al valore del fuso orario configurato. Per maggiori informazioni, vedi ALTER DATABASE SCOPED CONFIGURATIONFUSOSET ORARIO.
Vedere Funzioni e tipi di dati di data e ora per una panoramica di tutti i tipi di dati e le funzioni di data e ora Transact-SQL.
Convenzioni relative alla sintassi Transact-SQL
Sintassi
SYSDATETIME ( )
Tipi restituiti
datetime2(7)
Osservazioni:
Transact-SQL istruzioni possono riferirsi ovunque SYSDATETIME possano riferirsi a un'espressione datetime2(7).
SYSDATETIME è una funzione non deterministica. Non puoi indicizzare le viste e le espressioni che fanno riferimento a questa funzione in una colonna.
Nota
SQL Server ottiene i valori di data e ora utilizzando l'API Windows GetSystemTimeAsFileTime(). 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. Puoi usare l'API Windows di GetSystemTimeAdjustment() per determinarne l'accuratezza.
Esempi
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.
In questi esempi, supponiamo che la data attuale sia il 30 aprile 2026.
R. Ottenere la data e l'ora di sistema correnti
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. Ottenere la data di sistema corrente
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. Ottenere l'ora di sistema corrente
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
Esempi: Azure Synapse Analytics
D. Ottenere la data e l'ora di sistema correnti
SELECT SYSDATETIME();
Il set di risultati è il seguente.
--------------------------
4/30/2026 1:10:02 PM