CURRENT_TIMESTAMP (Transact-SQL)

Se aplica a: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW) Punto de conexión de análisis SQL en Microsoft Fabric Almacenamiento en Microsoft Fabric

Esta función devuelve la marca de tiempo del sistema de base de datos actual como un valor datetime sin el desplazamiento de zona horaria de la base de datos. CURRENT_TIMESTAMP deriva este valor del sistema operativo del equipo en el que se ejecuta la instancia de SQL Server.

Nota

SYSDATETIME y SYSUTCDATE tienen más precisión, de acuerdo con la medición de la precisión de las fracciones de segundo, que GETDATE y GETUTCDATE. La función SYSDATETIMEOFFSET incluye el ajuste de zona horaria del sistema. Puede asignar SYSDATETIME, SYSUTCDATETIME y SYSDATETIMEOFFSET a una variable de cualquiera de los tipos de fecha y hora.

Esta función es el equivalente de ANSI SQL a GETDATE.

Consulte Tipos de datos y funciones de fecha y hora para ver información de todos los tipos y funciones de datos de fecha y hora de Transact-SQL.

Convenciones de sintaxis de Transact-SQL

Sintaxis

CURRENT_TIMESTAMP  

Argumentos

Esta función no toma ningún argumento.

Tipo de valor devuelto

datetime

Observaciones

Las instrucciones Transact-SQL pueden hacer referencia a CURRENT_TIMESTAMP desde cualquier parte desde donde puedan hacer referencia a una expresión datetime.

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

Ejemplos

Estos ejemplos usan las seis funciones de sistema de SQL Server que devuelven los valores de fecha y hora actuales para devolver la fecha, la hora o ambas. Los ejemplos devuelven los valores en series, por lo que sus fracciones de segundo podrían diferir. Tenga en cuenta que los valores reales devueltos reflejarán la fecha y hora real de la ejecución.

A. Obtener la fecha y hora actuales del sistema

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. Obtener la fecha actual del sistema

SELECT CONVERT (DATE, SYSDATETIME())  
    ,CONVERT (DATE, SYSDATETIMEOFFSET())  
    ,CONVERT (DATE, SYSUTCDATETIME())  
    ,CONVERT (DATE, CURRENT_TIMESTAMP)  
    ,CONVERT (DATE, GETDATE())  
    ,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 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  
*/  

Ejemplos: Azure Synapse Analytics y Sistema de la plataforma de análisis (PDW)

SELECT CURRENT_TIMESTAMP;