Cita:
Iniciado por SangrePura Qué tal Leonardo,
Bueno comentarte que la consulta funciona perfecto! La he probado y no me cambia la edad hasta las
00hs 00' 00'', lo cual indica que es 100% precisa.
Iwalmente la estoy estudiando un poco porque entre tanta conversión me he perdido un poco
Agradezco tu colaboración y que tengas un excelente 2011!
Hola de Nuevo SangrePura:
Voy a tratar de explicar un poco las conversiones, para que te queden claro.
En primer lugar está la función TRUNC(argumento) esta función sirve para quitar los decimales que se generan al hacer la división. A la función de se le envía como parámetro la división de los meses comprendidos entre las dos fechas y 12 (los meses del año).
La función MONTHS_BETWEEN(fecha1, fecha2) recibe como parámetro dos fechas o date (fecha actual y fecha de nacimiento). Es justamente en esta función donde es necesario hacer la conversión, se tiene esto
Código:
to_date(to_char(CAMPO_FECHA, 'dd/mm/yyyy'), 'dd/mm/yyyy')
descomponiendo esto, en primer lugar tenemos que
Código:
to_char(CAMPO_FECHA, 'dd/mm/yyyy')
convierte una fecha a caraccter (eliminando las horas y dejándola en el formato dd/mm/yyyy) ahora bien, como la función MONTHS_BETWEEN necesita que se envíe como parámetro una fecha, lo único que hay que hacer es convertir el resultado anterior nuevamente a fecha, con TO_DATE... suena algo complicado, pero si lo analizas un poco creo que es bastante comprensible.
saludos.
Leo.