GETUTCDATE (Transact-SQL)

Si applica a:SQL Server database SQL di Azure Istanza gestita di SQL di Azure Azure Synapse Analytics AnalyticsPlatform System (PDW)SQL analytics endpoint in Microsoft FabricWarehouse in Microsoft Fabric

Restituisce il timestamp di sistema del database corrente come valore datetime. La differenza di fuso orario del database non è inclusa. Questo valore rappresenta l'ora UTC (Universal Time Coordinate) corrente. Questo valore è derivato dal sistema operativo del computer in cui è in esecuzione l'istanza di SQL Server.

Nota

La precisione in secondi frazionari di SYSDATETIME e SYSUTCDATETIME è maggiore di quella di GETDATE e GETUTCDATE. SYSDATETIMEOFFSET include la differenza di fuso orario di sistema. SYSDATETIME, SYSUTCDATETIME e SYSDATETIMEOFFSET possono essere assegnate a una variabile di qualsiasi tipo di data e ora.

Per una panoramica di tutte le funzioni e i tipi di dati di data e ora Transact-SQL, vedere Funzioni e tipi di dati di data e ora (Transact-SQL).

Convenzioni di sintassi Transact-SQL

Sintassi

GETUTCDATE()

Nota

Per visualizzare la sintassi Transact-SQL per SQL Server 2014 (12.x) e versioni precedenti, vedere la documentazione delle versioni precedenti.

Tipi restituiti

datetime

Osservazioni:

Le istruzioni Transact-SQL possono fare riferimento a GETUTCDATE in qualsiasi punto in cui possono fare riferimento a un'espressione datetime.

GETUTCDATE è una funzione non deterministica. Le viste e le espressioni che fanno riferimento a questa funzione in una colonna non sono indicizzabili.

Esempi

Negli esempi seguenti sono 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.

R. Ottenere la data e l'ora di sistema correnti

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

Set di risultati:

 SYSDATETIME()         2007-05-03 18:34:11.9351421   
 SYSDATETIMEOFFSET()   2007-05-03 18:34:11.9351421 -07:00   
 SYSUTCDATETIME()      2007-05-04 01:34:11.9351421   
 CURRENT_TIMESTAMP     2007-05-03 18:34:11.933   
 GETDATE()             2007-05-03 18:34:11.933   
 GETUTCDATE()          2007-05-04 01:34:11.933  

B. Ottenere la data di sistema corrente

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

Set di risultati:

 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. Ottenere l'ora di sistema corrente

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

Set di risultati:

 SYSDATETIME()        18:25:01.6958841
 SYSDATETIMEOFFSET()  18:25:01.6958841
 SYSUTCDATETIME()     01:25:01.6958841
 CURRENT_TIMESTAMP    18:25:01.6930000
 GETDATE()            18:25:01.6930000
 GETUTCDATE()         01:25:01.6930000