El formato de fecha de MySQL es una función muy útil. Da formato a una fecha como se especifica en el argumento. Se puede usar una lista de especificadores de formato a continuación para formatear una fecha. Se requiere el '%' antes de los caracteres del especificador de formato. Aquí hay una hoja de trucos para la función de formato de fecha de MySQL.
Sintaxis de formato de fecha de MySQL
DATE_FORMAT(fecha,formato)
fecha – cadena de fecha en el formato 'YYYY-MM-DD HH:MM:SS'. Puede ser una columna de fecha de una tabla, una cadena como se muestra arriba o una función del sistema como AHORA()
formato – cadena en el formato '%x'. x es un alfabeto para la cadena de formato.
Hoja de trucos del formato de fecha de MySQL:
Cadena de formato | Descripción |
---|---|
%a | Nombre abreviado del día de la semana (domingo...sábado) |
%b | Nombre abreviado del mes (Ene..Dic) |
%ac | Mes, numérico (0..12) |
%D | Día del mes con sufijo en inglés (0, 1, 2, 3, …) |
%d | Día del mes, numérico (00..31) |
%e | Día del mes, numérico (0..31) |
%f | Microsegundos (000000..999999) |
%H | Hora (00..23) |
%h | Hora (01..12) |
%I | Hora (01..12) |
%i | Minutos, numérico (00..59) |
%j | Día del año (001..366) |
%k | Hora (0..23) |
%l | Hora (1..12) |
% M | Nombre del mes (enero...diciembre) |
%m | Mes, numérico (00..12) |
%p | AM o PM |
%r | Hora, 12 horas (hh:mm:ss seguido de AM o PM) |
%S | Segundos (00..59) |
%s | Segundos (00..59) |
%T | Hora, 24 horas (hh:mm:ss) |
%U | Semana (00..53), donde el domingo es el primer día de la semana |
%u | Semana (00..53), donde el lunes es el primer día de la semana |
%V | Semana (01..53), donde el domingo es el primer día de la semana; usado con %X |
%v | Semana (01..53), donde el lunes es el primer día de la semana; usado con %x |
%W | Nombre del día de la semana (Domingo...Sábado) |
%w | Día de la semana (0=Domingo..6=Sábado) |
%X | Año de la semana donde el domingo es el primer día de la semana, numérico, cuatro dígitos; usado con %V |
%x | Año de la semana, donde lunes es el primer día de la semana, numérico, cuatro dígitos; usado con %v |
%Y | Año, numérico, cuatro dígitos |
%y | Año, numérico (dos dígitos) |
%% | Un carácter literal "%" |
Ejemplo:
#using system function now() SELECT DATE_FORMAT(NOW(),'%b %d %Y %h:%i %p'); #using a string SELECT DATE_FORMAT('2011-11-05 11:45:00','%b %d %Y %h:%i %p'); #using a date column CREATE TABLE TEST(DT DATETIME); INSERT INTO TEST(DT) VALUES('2010-10-05 10:45:00'); SELECT DATE_FORMAT(DT,'%b %d %Y %h:%i %p') from TEST;
Resultado:
Dec 04 2013 10:40 PM Nov 05 2013 11:45 PM Oct 05 2010 10:45 PM
Como puede ver, puede usar espacios, comas o incluso guiones en la cadena de formato. La función de formato de fecha de MySQL los retendrá en el resultado. El resto de la cadena se reemplaza con los formatos apropiados. Estos son algunos formatos de fecha de uso común que puede usar.
#using system function now() SELECT DATE_FORMAT(NOW(),'%M %d, %Y'); SELECT DATE_FORMAT(NOW(),'%b %d, %Y'); SELECT DATE_FORMAT(NOW(),'%c-%d-%Y'); SELECT DATE_FORMAT(NOW(),'%c-%d-%y'); SELECT DATE_FORMAT(NOW(),'%d/%c/%Y'); SELECT DATE_FORMAT(NOW(),'%d/%c/%y'); SELECT DATE_FORMAT(NOW(),'%b %d, %Y %h:%i %p'); SELECT DATE_FORMAT(NOW(),'%M %d, %Y %h:%i %p');
sus resultados