Saltar al contenido

¿Qué es CURRENT_DATE o función de valor de fecha actual para SQL Server?

Revisamos completamente cada posts de nuestra página web con la meta de mostrarte en todo momento información más veraz y actualizada.

Solución:

Puedes usar cualquiera GETDATE (tipo de retorno datetime) o SYSDATETIME (tipo de retorno datetime2), con la diferencia de la precisión de hasta nanosegundos para SYSDATETIME().

Ejemplo:

SELECT GETDATE() fn_GetDate, SYSDATETIME() fn_SysDateTime

Resultados:

fn_GetDatefn_SysDateTime
2018-06-27 10:31:18.963    2018-06-27 10:31:18.9659170

Consulte Funciones y tipos de datos de fecha y hora (Transact-SQL) en la documentación del producto.


Para completar, SQL Server también reconoce CURRENT_DATE como se menciona en la pregunta, como una función escalar ODBC:

SELECT fn CURRENT_DATE();

esto vuelve varchar(10)por lo que necesitaría un lanzamiento explícito o convertir al date tipo de datos:

SELECT CONVERT(date, fn CURRENT_DATE());

Las funciones integradas se recomiendan sobre las funciones escalares de ODBC.

CAST (... to date) con GETDATE() o SYSDATETIME()

la mejor manera es

SELECT CAST( GETDATE() AS date );

Por extensión en SQL Server, puede emitir SYSDATETIME() hasta la fecha,

SELECT CAST( SYSDATETIME() AS date );

los documentos en SYSDATETIME (Transact-SQL) muestra algunos ejemplos más,

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

/* All returned 2007-04-30 */  

Puede haber ventajas CAST (GETDATE() AS date)como GETDATE() devuelve de forma nativa menos precisión.

Calificaciones y comentarios

Nos puedes añadir valor a nuestro contenido añadiendo tu veteranía en las reseñas.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *