O formato MySQL Date é uma função muito útil. Ele formata uma data conforme especificado no argumento. Uma lista de especificadores de formato fornecida abaixo pode ser usada para formatar uma data. O '%' é necessário antes dos caracteres especificadores de formato. Aqui está uma folha de dicas para a função de formato de data do MySQL.
Sintaxe do formato de data do MySQL
DATE_FORMAT(data,formato)
data – string de data no formato ‘AAAA-MM-DD HH:MM:SS’. Pode ser uma coluna de data de uma tabela, string como mostrado acima ou uma função do sistema como NOW()
formato – string no formato ‘%x’. x é um alfabeto para a string de formato.
Folha de dicas do formato de data MySQL –
Formatar string | Descrição |
---|---|
%a | Nome abreviado do dia da semana (Dom..Sáb) |
%b | Nome do mês abreviado (Jan..Dez) |
%ac | Mês, numérico (0..12) |
%D | Dia do mês com sufixo em inglês (0th, 1st, 2nd, 3rd, …) |
%d | Dia do mês, numérico (00..31) |
%e | Dia do mês, numérico (0..31) |
%f | Microssegundos (000000..999999) |
%H | Hora (00..23) |
%h | Hora (01..12) |
%I | Hora (01..12) |
%i | Minutos, numérico (00..59) |
%j | Dia do ano (001..366) |
%k | Hora (0..23) |
%l | Hora (1..12) |
%M | Nome do mês (janeiro..dezembro) |
%m | Mês, numérico (00..12) |
%p | AM ou PM |
%r | Horário, 12 horas (hh:mm:ss seguido de AM ou PM) |
%S | Segundos (00..59) |
%s | Segundos (00..59) |
%T | Horário, 24 horas (hh:mm:ss) |
%U | Semana (00..53), onde domingo é o primeiro dia da semana |
%u | Semana (00..53), onde segunda-feira é o primeiro dia da semana |
%V | Semana (01..53), onde domingo é o primeiro dia da semana; usado com %X |
%v | Semana (01..53), onde segunda-feira é o primeiro dia da semana; usado com %x |
%W | Nome do dia da semana (Domingo... Sábado) |
%w | Dia da semana (0=Domingo..6=Sábado) |
%X | Ano da semana em que domingo é o primeiro dia da semana, numérico, quatro dígitos; usado com %V |
%x | Ano para a semana, onde segunda-feira é o primeiro dia da semana, numérico, quatro dígitos; usado com %v |
%Y | Ano, numérico, quatro dígitos |
%y | Ano, numérico (dois dígitos) |
%% | Um caractere literal “%” |
Exemplo:
#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 você pode ver, você pode usar espaços, vírgulas ou até mesmo hífens na string de formato. A função de formato de data do MySQL irá retê-los no resultado. O resto da string é substituído pelos formatos apropriados. Aqui estão alguns formatos de data comumente usados que você pode 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');
Seus resultados