A função DATE_FORMAT() do MySQL
A tônica é verdadeira, não há banco de dados onde não seja necessário manipular campos de data e hora, mas isso acarreta num grave problema com relação à portabilidade do seu projeto. Aprenda a contornar esse problema utilizando a função DATE_FORMAT() do MySQL.
[ Hits: 86.216 ]
Por: Fábio Berbert de Paula em 06/11/2002 | Blog: https://fabio.automatizando.dev
| Especificador | Descrição |
%M | Nome do mês (January..December) |
%W | Nome do dia da semana (Sunday..Saturday) |
%D | Dia do mês com o sufixo em Inglês (1st, 2nd, 3rd, etc.) |
%Y | Ano, numérico, com 4 dígitos |
%y | Ano, numérico, com 2 dígitos |
%a | Nome do dia da semana abreviado (Sun..Sat) |
%d | Dia do mês, numérico (00..31) |
%e | Dia do mês, numérico (0..31) |
%m | Mês, numérico (01..12) |
%c | Mês, numérico (1..12) |
%b | Nome do mês, abreviado (Jan..Dec) |
%j | Dia do ano (001..366) |
%H | Hora (00..23) |
%k | Hora (0..23) |
%h | Hora (01..12) |
%I | Hora (01..12) |
%l | Hora (1..12) |
%i | Minutos, numérico (00..59) |
%r | Horário, 12 horas (hh:mm:ss [AP]M) |
%T | Horário, 24 horas (hh:mm:ss) |
%S | Segundos (00..59) |
%s | Segundos (00..59) |
%p | AM ou PM |
%w | Dia da semana (0=Domingo..6=Sábado) |
%U | Semana (00..53), onde Domingo é o primeiro dia da semana |
%u | Semana (00..53), onde Segunda é o primeiro dia da semana |
%% | Caractere `%'. Atenciosamente, Fábio Berbert de Paula fabio@vivaolinux.com.br Página anterior Páginas do artigo
1. Introdução2. A função DATE_FORMAT() Outros artigos deste autor
HOWTO: Como se tornar moderador do Viva o Linux Criando Aplicativos Mobile com React Native Como criar um bot para curtir e comentar perfis do Instagram FISL 10: Venturas e desventuras da turma do VOL Fazendo seu Linux falar com espeak Leitura recomendada
MySQL Workbench no Slackware 14.0 Slackware + MariaDB (MySQL): importando e exportando arquivos TXT Administrando bancos MySQL com phpMyAdmin Replicação em banco de dados MySQL Instalando o MySQL no Slackware Comentários
[1] Comentário enviado por harleyhav em 19/03/2004 - 18:46h
Sempre é bom contarmos com pessoas como vc. É assim que iremos mais longe: Adquirindo e passando experiências uns aos outros. Valeu!!! Continue assim!!! harleyhav@click21.com.br
[2] Comentário enviado por harleyhav em 19/03/2004 - 18:49h
Se você puder disponibiliza também estas matérias em format PDF, ajudaria bastante. Estou estudando a respeito do MySQL, mas não sei o inglês, por isso me atrazo; tenho muita vontade de aprender. no meu perfil tem uma descrição do que estou pretendendo. Se puder me ajudar, agradeço muito. Obrigado.
[3] Comentário enviado por germano_silva em 24/02/2005 - 21:46h
Cara muito interessante o que escreveu; Me deu até uma luz sobre pq estou fazendo um projeto sobre PHP+MySQL e ja ouvi falar desse metodo porém ainda naum o tinha visto na pratica. Valeu cara tu é 10
[4] Comentário enviado por rafael_nery em 19/12/2005 - 13:12h
Para consulta tudo bem, mas para inserir dados neste formato???
[5] Comentário enviado por morphors em 05/11/2008 - 08:04h
estou com a mesma dúvida q o rafael... tenho uma base de dados q preciso passar para o MySQL, e ela já esta no formato dd/mm/aaaa, inserindo desta forma em um campo "date", não vai. Estou procurando alguma função em php ou mysql q grave no formado do mysql aaaa-mm-dd. São aproximadamente 600 registros e tá complicado. Mais valeu!!! Boa dica
[6] Comentário enviado por fabio em 05/11/2008 - 09:51h
Você pode resolver isso abrindo o arquivo SQL no VIM e usando uma expressão regular para fazer a substituição/formatação de data. Ex.: $ vim registros.sql Dentro do editor, digite o seguinte comando e pressione enter: :%s/\([0-9][0-9]\)\/\([0-9][0-9]\)\/\([0-9][0-9][0-9][0-9]\)/\3-\2-\1 E pra salvar e sair: :x Um abraço.
[7] Comentário enviado por farmamanager em 17/07/2012 - 11:05h
Fiz no meu MySQL e funcionou (quase) perfeitamente. Usei %b e ficou em inglês. Alguém sabe como traduzir?
[8] Comentário enviado por wiltonjr em 27/09/2016 - 18:30h
[4] Comentário enviado por rafael_nery em 19/12/2005 - 13:12h Para consulta tudo bem, mas para inserir dados neste formato??? Oi Rafael Para inserir dados você pode usar a instrução no seguinte formato: INSERT INTO funcionario values (07, "WILTON", '5', "INSTRUTOR", 1530.00, STR_TO_DATE("08/08/1988", "%d/%m/%Y")); PatrocínioSite hospedado pelo provedor RedeHost.
DestaquesArtigosFaça suas próprias atualizações de pacotes/programas no Void Linux e torne-se um Contribuidor Como rodar o Folding@home no Linux Criando um painel de controle (Dashboard) para seu servidor com o Homepage O Abismo entre o Código e o Chão: Saltos Tecnológicos e a Exclusão Estrutural no Brasil Instalar e Configurar a santíssima trindade (PAP) no Void Linux DicasPisando no acelerador do Linux Mint: Kernel XanMod, zRAM e Ajustes de Swap Como compilar kernel no Linux Mint Lançamento do Brutal DOOM test 6 Consertando o erro no Brave de webgl Solução para ter de volta as bordas e barra de títulos das janelas em zenity no Debian 13.x TópicosSeno, Coseno, Tangente em CLIPPER (0) Inserir uma URL num arquvo pelo Ubuntu (CLIPPER) (0) VMWare Player não conecta na rede nem consigo intercambiar arquivos (1) Top 10 do mês
Scripts |