Blog corporativo

Artigos, scripts e dicas postados pelos colaboradores. Não são postados scritps relacionados à trabalhos feitos para clientes.

Calculando a idade diretamento na query

Geralmente usamos a linguagem de programação para calcular a idade de uma pessoa ou de alguma coisa. Mas em alguns casos, como o do MySQL, é possível fazer esse processo diretamente no SGBD.

No caso, para calcular a idade de alguém diretamente no MySQL basta:

DATE_FORMAT(NOW(),'%Y')-DATE_FORMAT(data_nascimento,'%Y')-(DATE_FORMAT(NOW(),'00-%m-%d')< DATE_FORMAT(data_nascimento,'00-%m-%d')) AS idade;


Note que o campo a ser usado deve ser de data (date, datetime, etc...), no meu exemplo o campo com a data de nascimento se chamava data_nascimento.

Eu sou muito adepto de fazer o máximo de coisas possíveis diretamente no SGBD, pois assim, quando o resultado retorna para o script, tudo já vem pronto para uso.

Bom, fica ai a dica.