Podemos obter a diferença entre datas no MySQL usando comandos do próprio MySQL

Para obtermos a diferença entre datas usamos a query

SELECT DATEDIFF([DATA1],[DATA2]);

O resultado é a diferença entra as datas em dias. A DATA1 é a data mais recente a DATA2 a data mais antiga. Se alterarmos a ordem das datas o resultado continua a ser a diferença em dias mas como numero negativo.

Como exemplo:

SELECT DATEDIFF('2011-01-02 01:00:00','2011-01-01');

O resultado seria igual a 1

Se usasse desta forma:

SELECT DATEDIFF('2011-01-01 01:00:00','2011-01-02');

O resultado seria -1

Assim com este query podem calcular a diferença entre datas.