1
resposta

Faça como eu fiz: calcule a idade com base na data de nascimento

SELECT Nome, 
       (strftime('%Y', 'now') - strftime('%Y', DataNascimento)) - 
       (strftime('%m', 'now') < strftime('%m', DataNascimento)) AS Idade
FROM TabelaClientes;
1 resposta

Oi, Márcia! Tudo bom?

Excelente, siga praticando com os desafios!

Você soube aplicar as funções de data strftime para calcular a idade de forma eficiente, aproveitou o operador lógico para ajustar o cálculo com base no mês de nascimento e entendeu como o tratamento de datas é essencial para gerar informações precisas em sistemas reais.

Como dica adicional, experimente utilizar CASE quando precisar lidar com condições mais complexas no cálculo de idade. Assim:

SELECT Nome,
       CASE
           WHEN strftime('%m-%d', 'now') >= strftime('%m-%d', DataNascimento)
           THEN strftime('%Y', 'now') - strftime('%Y', DataNascimento)
           ELSE strftime('%Y', 'now') - strftime('%Y', DataNascimento) - 1
       END AS Idade
FROM TabelaClientes;

Resultado: Calcula a idade considerando mês e dia, com maior precisão.

Com isso, você poderá tratar aniversários de maneira mais adaptada.

Ícone de sugestão Para saber mais:

Sugestão de conteúdo para você mergulhar ainda mais sobre o tema:

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!