Saltar al contenido

Función de Base de Datos Mvsql: DATENAME()

Resumen

Devuelve una parte de un valor de fecha o fecha/hora con una representación de cadena en inglés para días y meses.

Sintaxis

DATENAME(<datepart>, <datetime>)

Parámetros

Parte de Fecha

Fecha Parte Alias Soporte para proveedores
year yy, yyyy Todos los proveedores de RDBMS.
quarter qq, q SQL Server y SQLite
month mm, m Todos los proveedores de RDBMS.
dayofyear dy, y SQL Server y SQLite
day dd, d Todos los proveedores de RDBMS.
week wk, ww SQL Server y SQLite
weekday dw, w SQL Server y SQLite
hour hh Todos los proveedores de RDBMS.
minute mi, n Todos los proveedores de RDBMS.
second ss, s Todos los proveedores de RDBMS.

La parte de la fecha no debe citarse.

La parte de la fecha no distingue entre mayúsculas y minúsculas.

SQL Server calcula las semanas utilizando el domingo como inicio de semana. SQLite, por otro lado, usa el lunes.

Fecha y Hora

Columna o expresión de tipo datetime o date. Algunas partes de la fecha esperan una fecha y hora.

Devoluciones

Devuelve una cadena que representa el nombre de la parte de fecha dada.

Independientemente de si devuelve un nombre "lunes" o un valor que podría representarse numéricamente (2015), ese valor será una cadena.

Observaciones

Para la versión 3.3.33893 y superior de Vinyl, todos los proveedores de bases de datos ahora utilizarán ISO 8601 (semanas que comienzan en lunes, a partir de la 1 del primer lunes del año) para esta función.

Las versiones anteriores en Vinyl manejaban los límites de fechas de manera diferente. Por ejemplo, SQL Server calcula las semanas utilizando el domingo como inicio de semana. SQLite, por otro lado, usa el lunes.

Ejemplos

Expresión Devoluciones
DATENAME(minute, TIMESTAMP('1997-01-02 12:13:14')) 13
DATENAME(hour, TIMESTAMP('1997-01-02 12:13:14')) 12
DATENAME(day, TIMESTAMP('1997-01-02 12:13:14')) 2
DATENAME(month, TIMESTAMP('1997-01-02 12:13:14')) January
DATENAME(month, TIMESTAMP('1997-12-02 12:13:14')) December
DATENAME(weekday, TIMESTAMP('1997-01-02 12:13:14')) Thursday
DATENAME(year, TIMESTAMP('1997-01-02 12:13:14')) 1997