Como o MySQL pode facilitar a sua vida
NOW() e intervalos
SELECT NOW() – irá retornar a data e hora atual do servidor MySQL no formato
aaaa-mm-dd hh:mm:ss
SELECT NOW() + INTERVAL 2DAY – irá retornar a data e hoira do servidor, só que com uma diferença de 2 dias para frente(ex: hoje é 2006-10-07 ele irá retornar 2006-10-09), essa diferença pode ser negativa também, e o intervalo pode ser horas, minutos, segundos, dias, semanas, meses, anos, etc;
Formatando datas com o DATE_FORMAT()
Sintaxe:
DATE_FORMAT(campo, ‘formato desejado’)
Exemplos de uso:
Lembrando sempre que o MySQL armazena as datas no formato aaaa-mm-dd
Para selecionar a data no formato que usamos, ou de nossa necessidade:
Esse exemplo agora é muio útil, eu sempre uso quando eu tenho um formulário que tem um campo de data e essa data temque ser pesquisada no MySQL, com ela eu evito de ficar transformando a data de dd/mm/aaaa para aaaa-mm-dd
Função DATEDIFF
Ela calcula a diferença em dias entre duas datas
SELECT DATEDIFF('2006-12-31', '2006-01-01') = 364
Bem e esse é o fim desse artigo, espero que tenha gostado e que ele possa te ajudar muito.
Abraços,
Diego Hellas
SELECT NOW() – irá retornar a data e hora atual do servidor MySQL no formato
aaaa-mm-dd hh:mm:ss
SELECT NOW() + INTERVAL 2DAY – irá retornar a data e hoira do servidor, só que com uma diferença de 2 dias para frente(ex: hoje é 2006-10-07 ele irá retornar 2006-10-09), essa diferença pode ser negativa também, e o intervalo pode ser horas, minutos, segundos, dias, semanas, meses, anos, etc;
Formatando datas com o DATE_FORMAT()
Sintaxe:
DATE_FORMAT(campo, ‘formato desejado’)
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 `%'.
Exemplos de uso:
Lembrando sempre que o MySQL armazena as datas no formato aaaa-mm-dd
Para selecionar a data no formato que usamos, ou de nossa necessidade:
SELECT nome, DATE_FORMAT(data_nascimento, ‘%d/%m/%Y’) AS data FROM funcionarios
Esse exemplo agora é muio útil, eu sempre uso quando eu tenho um formulário que tem um campo de data e essa data temque ser pesquisada no MySQL, com ela eu evito de ficar transformando a data de dd/mm/aaaa para aaaa-mm-dd
SELECT nome, departamento FROM funcionários WHERE DATE_FORMAT(data_nascimento, ‘%d/%m/%Y’) = ‘22/11/1986’
Função DATEDIFF
Ela calcula a diferença em dias entre duas datas
SELECT DATEDIFF('2006-12-31', '2006-01-01') = 364
Bem e esse é o fim desse artigo, espero que tenha gostado e que ele possa te ajudar muito.
Abraços,
Diego Hellas
Diego parabens mesmo...
realmente muito bom.. esse artigo.. e nem sabia dessas paradinhas...
parabens.. me ajudou muito..
a parte do date_format.. ja quebrou um ganho num preciso fica fazer no PHP..
eheuehuehe
valeu..
realmente muito bom.. esse artigo.. e nem sabia dessas paradinhas...
parabens.. me ajudou muito..
a parte do date_format.. ja quebrou um ganho num preciso fica fazer no PHP..
eheuehuehe
valeu..
24/07/2007 12:34pm
(~17 anos atrás)
Companheiro,
Vc está de parabéns, a comunidade esta dando vivas pra vc ... krk mto bom, quando eu xegar em casa vou testar as paradas ... mto bom mesmo kra ... ae coloque + posts desses q a gente agradece vei ...
show
abs
Vc está de parabéns, a comunidade esta dando vivas pra vc ... krk mto bom, quando eu xegar em casa vou testar as paradas ... mto bom mesmo kra ... ae coloque + posts desses q a gente agradece vei ...
show
abs
24/07/2007 7:57am
(~17 anos atrás)
Realmente, as aspas não são necessárias. Mas é preciso dar um espaço entre o número e o DAY.
No artigo: SELECT NOW() + INTERVAL 2DAY (dá erro)
Com espaço: SELECT NOW() + INTERVAL 2 DAY (aí funciona)
No artigo: SELECT NOW() + INTERVAL 2DAY (dá erro)
Com espaço: SELECT NOW() + INTERVAL 2 DAY (aí funciona)
17/07/2007 12:04pm
(~17 anos atrás)
Olá Jayme,
Obrigado pelos elogios!
Estranho so ter funcionado assim, sempre usei sem aspas e sempre funcionou normalmente, dou aulas de MySQL e sempre mostrei assim e nunca tive problemas.
Abraços!
Obrigado pelos elogios!
Estranho so ter funcionado assim, sempre usei sem aspas e sempre funcionou normalmente, dou aulas de MySQL e sempre mostrei assim e nunca tive problemas.
Abraços!
17/07/2007 11:03am
(~17 anos atrás)
Parabéns pelo artigo. Realmente muito útil.
Aqui no meu MySQL/PHP, o cálculo do INTERVAL só funcionou com a seguinte sintaxe:
SELECT NOW() + INTERVAL '2' DAY
Aqui no meu MySQL/PHP, o cálculo do INTERVAL só funcionou com a seguinte sintaxe:
SELECT NOW() + INTERVAL '2' DAY
17/07/2007 10:49am
(~17 anos atrás)
Super Artigo, cara você está de parabéns. estou com php faz uns meses, sempre é bem vindo. artigos novo !
16/07/2007 8:22pm
(~17 anos atrás)
Obrigado pessoal pelos elogios, pena que demorou pra caramba a liberaç~çao do artigo.. já faz quase um ano que eu escrevi ele e so agora foi liberado!
Mas é isso ai obrigado novamente!!
Mas é isso ai obrigado novamente!!
16/07/2007 10:46am
(~17 anos atrás)
Obrigado!
Achoq ue o date_format é o recurso mais útil para nós que programamos, é muito mais fácil pegar ele correto do que ficar transformando pelo PHP.
Abraços!