MySql

Em por

No artigo de hoje, mostrarei a vocês mais uma artimanha de se trabalhar com datas em banco de dados, na qual utilizamos uma função do próprio MySql para convertemos a data da maneira que quisermos para exibi-las ao usuário chamada DATE_FORMAT().

Formatando datas no MySql com DATE_FORMAT()

DATE_FORMAT()

Trabalhar com datas é sempre um trabalho trivial a se realizar, pois quase sempre elas nos trazem problemas na hora de manipula-las ou exibi-las. Existem muitas formas de se fazer esse trabalho de exibi-la corretamente, umas delas e talvez mais conhecida, é pelo próprio php na qual usamos a função explode transformando a data em um array e depois remontando a data pelos índices.

Mas hoje, em termos de manipular a data somente para exibi-la, vamos aprender um método muito mais fácil em minha opinião, onde na própria consulta SQL definimos a forma como queremos exibir a data já no SELECT usando o DATE_FORMAT ().

Quando fazemos uma consulta ao banco de dados, ele retorna uma data no seguinte formato, 2015-03-20 00:20:23 ou talvez nesse, 2015-03-20 (sem as horas).

Ai você se pergunta, como podemos fazer para que ele já traga no formato desejado, por exemplo, 20/03/2015?

É bem simples. Na hora de fazer o SELECT, utilizamos a função DATE_FORMAT() do MySQL, ela pega a data no formato original e manipula da forma que você quiser.

Exemplo 1:

 SELECT * DATE_FORMAT (`data`,'%d/%m/%Y') AS `data_formatada` FROM `pedidos`

Nesse caso, ele pegou a data contida no campo data, converteu para formato DD/MM/YYYY e renomeou o campo que formatamos a data para data_formatada.

Exemplo 2:

 SELECT * DATE_FORMAT (`data`,'%d-%m às %Hh%i') AS `data_formatada` FROM `pedidos`

No segundo exemplo, o formato mudou para DD-MM às HHhMM, Exemplo: 20/03 às 09h35.

Cada item da data tem um identificador, veja abaixo a lista deles:

 ID Descrição %a Nome da Semana Abreviado (Seg a Dom) %b Nome do mês Abreviado (Jan a Dez) %c Mês de forma numérica (1 a 12) %D Dia do mês com o sufixo Inglês (1st, 2nd, 3rd, …) %d Dia do Mês de forma numérica (01 a 31) %e Dia do Mês de forma numérica (1 a 31) %f Micro segundos (000000..999999) %H Horas (00 a 23) %h Horas (01 a 12) %I Horas (01 a 12) %i Minutos de forma numérica (00 a 59) %j Dia do Ano (001 a 366) %k Horas (0 a 23) %l Horas (1 a 12) %M Nome do mês (Janeiro a Dezembro) %m Mês de forma numérica (01 a 12) %p AM ou PM %r Horas, 12-horas (hh:mm:ss seguidos de AM ou PM) %S Segundos (00 a 59) %s Segundos (00 a 59) %T Horas, 24-horas (hh:mm:ss) %U Semana (00 a 53), onde Domingo é o primeiro dia da semana %u Semana (00 a 53), onde Segunda é o primeiro dia da semana %V Semana (00 a 53), onde Domingo é o primeiro dia da semana; usado com %X %v Semana (00 a 53), onde Segunda é o primeiro dia da semana; usado com %x %W Nome do dia da semana (Segunda a Domingo) %w Dia da semana (0=Domingo a 6=Sábado) %X Dia da semana onde Domingo é o primeiro dia da semana, de forma numérica com 4 dígitos, usado com %V %x Ano da semana, onde Segunda é o primeiro dia da semana, de forma numérica, com 4 dígitos, usado com %v %Y Ano numérico com 4 dígitos %y Ano numérico com 2 dígitos %% Um simples caracter “%” %x x, para qualquer “x” não listado acima

Dúvidas criticas ou sugestões comentem abaixo que teremos o prazer em tentar ajuda-los. laugh

Veja Também:

Artigos Relacionados a categoria: MySql

Olá, deixe seu comentário para Formatando datas no MySql com DATE_FORMAT()

Enviando Comentário Fechar :/

...AINDA NÃO VIU NOSSO PORTFÓLIO?

Se ainda não viu nosso Portfólio e quer conhecer um pouco mais... aproveite e veja agora mesmo e tenha um site de qualidade para o seu negócio!

[contato]
Ver o Portfólio Agora