SELECT Nome, 
       (strftime('%Y', 'now') - strftime('%Y', DataNascimento)) - 
       (strftime('%m', 'now') < strftime('%m', DataNascimento)) AS Idade
FROM TabelaClientes;
SELECT Nome, 
       (strftime('%Y', 'now') - strftime('%Y', DataNascimento)) - 
       (strftime('%m', 'now') < strftime('%m', DataNascimento)) AS Idade
FROM TabelaClientes;
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.
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!
 Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!