Dicas SQL Server

Calcular a idade no SQL Server

Calcular a idade no SQL Server
Calcular a idade no SQL Server

Saiba como calcular uma idade no SQL Server.

Recentemente conversando com alguns desenvolvedores em um cliente, eles estavam precisando saber como calcular uma idade no SQL Server.

Fiz alguns testes e encontrei uma forma para calcular e aqui abaixo vou deixar para vocês.

DECLARE @DataNascimento DATETIME = '1991-12-12'
DECLARE @Hoje DATETIME = '2016-12-11 21:00:00' -- exemplo de horário da função GETDATE()
                           -- funciona corretamente se alterado acima para hora 00:00:00
 
SELECT FLOOR(DATEDIFF(DAY, @DataNascimento, @Hoje) / 365.25) -- retorna 24, idade correta
SELECT DATEDIFF(HOUR, @DataNascimento, @Hoje) / 8766 -- retorna 25 incorreta

Grande abraço!

Calcular a idade no SQL Server