[firebase-br] Retornar a idade a partir da data de nascimento

Ivan Guimarães Meirelles igmeirelles em gmail.com
Qui Mar 29 15:57:56 -03 2007


Olá... tente assim:

SELECT paciente_id, pac_nome, pac_sexo, 
cast(substring(cast((current_date + 1 - pac_datanasc) / 365.25) from 1 for 2) as integer) as idade 
FROM PACIENTES ORDER BY PAC_NOME

Espero ter ajudado...

Um abraço...


Cleidson Developer escreveu:
> Tentei sim,
>
> tendo dois valores:
>
> 31,1
> 30,8
>
> ambos foram arredondados para 31.
>
>
>
> Kleber Caneva escreveu:
>   
>> Tentou CAST( ((current_date - pac_datanasc) / 365.16) as INTEGER) ?
>>
>> Se não me engano ele trunca o valor e não arredonda..
>>
>> []´s
>>
>> Kléber Caneva
>>
>>
>> ----- Original Message ----- 
>> From: "Cleidson Developer" <cleidson.developer em gmail.com>
>> To: <lista em firebase.com.br>
>> Sent: Thursday, March 29, 2007 2:57 PM
>> Subject: [firebase-br] Retornar a idade a partir da data de nascimento
>>
>>
>> Olá pessoal,
>>
>> Estou eu aqui novamente com mais uma dúvida:
>>
>> Gostaria de usar um select que me retornasse a idade em formato inteiro.
>>
>> Essa é a instrucao que estou usando:
>>
>> SELECT paciente_id, pac_nome,
>> pac_sexo, ((current_date - pac_datanasc) / 365.16) as
>> idade FROM PACIENTES ORDER BY PAC_NOME
>>
>>
>> Ta funcionando normal, só que a idade retornada nao é um numero inteiro.
>> Ela retorna algo como 31,2.
>>
>> As funcoes que tentei usar, arredondam o numero ao inves de apenas
>> ignorar a parte fracionaria. Se arredondasse só pra baixo, tudo bem, mas
>> se o numero for 31,91 será arredondado pra 32 ai vai dar problema.
>>
>>
>>
>> Gostaria de saber como obter no retorno apenas o numero inteiro.
>>
>> Quem puder me ajudar, agradeço. rs
>>     




Mais detalhes sobre a lista de discussão lista