MySQL - Cálculo de período de tempo entre duas datas com TIMESTAMPDIFF
Muitas vezes precisamos saber quantos dias se passaram desde que um dado registro entrou no banco de dados ou outros cálculos com datas e horas que precisemos agrupar em dias, meses, horas e etc. Este tipo de informação geralmente é útil nos processos de limpeza e backup de dados mas também em outras situações como a exibição de dados para um usuário. Geralmente este procedimento é delegado ao software que lê o banco de dados e realiza as operações necessárias, seja para backup, limpeza ou exibição de dados. Porém o MySQL possui uma função interessante para efetuar este tipo de procedimento diretamente na query do banco de dados, o que é mais natural já que se trata de um dado. A função TIMESTAMPDIFF() do MySQL calcula o tempo decorrido entre duas datas que pode ser em dias, meses, minutos e etc. A lista completa segue abaixo: FRAC_SECOND (microsegundos), SECOND (segundos), MINUTE (minuto), HOUR (hora), DAY (dia), WEEK (semana), MONTH (mês), QUARTER (trimestre),...