Compartir a través de


GETUTCDATE (Transact-SQL)

Devuelve la marca de tiempo del sistema de base de datos actual como un valor datetime. El desfase de zona horaria de la base de datos no está incluido. Este valor representa la hora UTC actual (Hora universal coordinada). Este valor se deriva del sistema operativo de su PC donde la instancia de SQL Server se está ejecutando.

Nota

SYSDATETIME y SYSUTCDATETIME tienen más precisión en segundos fraccionaria que GETDATE y GETUTCDATE. SYSDATETIMEOFFSET incluye el defase de zona horaria del sistema. SYSDATETIME, SYSUTCDATETIME y SYSDATETIMEOFFSET pueden asignarse a una variable de tipo fecha y hora.

Para obtener información general sobre todos los tipos de datos y funciones de fecha y hora de Transact-SQL, consulte Funciones de fecha y hora (Transact-SQL). Para obtener información y ejemplos comunes a los tipos de datos y funciones de fecha y hora, consulte Usar datos de fecha y hora.

Icono de vínculo a temasConvenciones de sintaxis de Transact-SQL

Sintaxis

GETUTCDATE()

Tipos de valor devueltos

datetime

Comentarios

Las instrucciones Transact-SQL pueden hacer referencia a GETUTCDATE desde cualquier parte punto desde el que puedan hacer referencia a una expresión datetime.

GETUTCDATE es una función no determinista. Las vistas y las expresiones que hacen referencia a esta función en una columna no se pueden indizar.

Ejemplos

Los ejemplos siguientes usan las seis funciones de sistema SQL Server que devuelven fecha y hora actuales para devolver la fecha, la hora o ambas. Los valores se devuelven en serie; por consiguiente, sus segundos fraccionarios podrían ser diferentes.

A. Obtener la fecha y hora actuales del sistema

SELECT 'SYSDATETIME()      ', SYSDATETIME();
SELECT 'SYSDATETIMEOFFSET()', SYSDATETIMEOFFSET();
SELECT 'SYSUTCDATETIME()   ', SYSUTCDATETIME();
SELECT 'CURRENT_TIMESTAMP  ', CURRENT_TIMESTAMP;
SELECT 'GETDATE()          ', GETDATE();
SELECT 'GETUTCDATE()       ', GETUTCDATE();
/* Returned:
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. Obtener la fecha actual del sistema

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());

/* Returned: 
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. Obtener la hora actual del sistema

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());

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

Vea también

Referencia