Júlio César Martini

Colunista PHP do iMasters. Certificações Oracle: 1Z0-047 / 1Z0-052

Calcular diferença entre dois horários no MySQL

Esses dias precisei através de uma query saber a diferença entre o horário atual e a última inserção do registro no banco de dados. O MySQL possui uma função muito bacana chamada TIMEDIFF que faz todo esse trabalho para a gente. Abaixo, mostro um pequeno exemplo de sua utilização.

Exemplo 01: Estou passando como parâmetro duas datas/horário. O resultado será: -07:00:00
select TIMEDIFF(’2009-07-25 10:00:00′, ’2009-07-25 17:00:00′) diferenca

Lembre-se que caso vc queira pegar a data/hora atual no MySQL basta utilizar NOW().

Em minha aplicação por exemplo utilizei o NOW() e comparei com a última data cadastrada em minha tabela:

SELECT TIMEDIFF(now(), a.data) diferenca
FROM tabela a
ORDER BY a.data desc
LIMIT 1

Fica aqui a dica! :)

Categoria: Banco de Dados
  • alanoNo Gravatar diz:

    muito bom, evitou varias linhas de codigo em php

    24/02/2010 em 09:53

Seu endereço de email não será publicado. Campos obrigatório são marcados *

*