1
resposta

Calculo de idade feito a partir do ano de nascimento.

A resposta do exercício está incorreta pois está considerando apenas o ano de nascimento e calculando a diferença entre eles, não trazendo a idade real. Acredito que devemos considerar os meses e dividi-los pela quantidade de meses no ano para tornar a consulta correta.

SELECT DATEDIFF(MONTH,[DATA_NASCIMENTO],GETDATE())/12 FROM NOTAS_FISCAIS

1 resposta

Oi Henrique, tudo bem?

Ambos códigos estão corretos. A diferença é que o código do exercício calcula a diferença entre os anos e o seu calcula a diferença com meses, já que faz a divisão por 12.

SELECT NOME, DATEDIFF(YEAR, [DATA DE NASCIMENTO], GETDATE()) AS IDADE
FROM [TABELA DE CLIENTES]; //código aula

SELECT NOME, DATEDIFF(MONTH, [DATA DE NASCIMENTO], GETDATE()) / 12 AS IDADE
FROM [TABELA DE CLIENTES];//código Henrique

Qualquer dúvida é só falar, bons estudos :)