Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

Calculo de la Edad de uno

Estas en el tema de Calculo de la Edad de uno en el foro de Oracle en Foros del Web. Hola amigos del Foro como están. Quisiera que me ayudaran como calcular la edad de uno, estoy trabajando con la BD:Oracle, y esto lo tengo ...
  #1 (permalink)  
Antiguo 25/01/2005, 15:37
Avatar de myconatani  
Fecha de Ingreso: enero-2004
Ubicación: Pje.Ralún 8955 Santiago
Mensajes: 73
Antigüedad: 20 años, 3 meses
Puntos: 1
Calculo de la Edad de uno

Hola amigos del Foro como están.

Quisiera que me ayudaran como calcular la edad de uno, estoy trabajando con la BD:Oracle, y esto lo tengo que hacer en PL/SQL, para eso estamos trabajando con la herramienta TOAD.

Esta es la sentencia que actualemnte estoy ocupando, pero no es 100% correcta, aqui les va :

SELECT trunc((to_date((to_char(sysdate,'yyyy')||'-'||to_char(sysdate,'mm')||'-'||to_char(sysdate,'dd')),'yyyy-mm-dd')-clie_fecha_nacimiento)/365)
FROM clientes

El campo clie_fecha_nacimiento es la variable de la tabla, espero que me entiendan.

Chaooo.
atte.
myconatani
__________________
myconatani
  #2 (permalink)  
Antiguo 24/06/2005, 11:14
Avatar de acervantes  
Fecha de Ingreso: agosto-2003
Ubicación: Madrid
Mensajes: 311
Antigüedad: 20 años, 8 meses
Puntos: 1
esto te puede servir:

Código PHP:
SELECT 
(to_number(to_char(sysdate,'YYYY')) - to_number(to_char(clie_fecha_nacimiento,'YYYY'))) - 
case 
when to_char(sysdate,'MMDD') < to_char(clie_fecha_nacimiento,'MMDD'then 1 
else 
end 
from clientes 
sysdate: la fecha del sistema, puedes reemplazar por la fecha que quieras
fecnacimiento: la fecha de nacimiento en la tabla
edad: solo el nombre de la columna que le doy al resultado
__________________
ACervantes

[El éxito dura hasta que alguien las caga; los errores son eternos]
  #3 (permalink)  
Antiguo 24/06/2005, 11:15
Avatar de acervantes  
Fecha de Ingreso: agosto-2003
Ubicación: Madrid
Mensajes: 311
Antigüedad: 20 años, 8 meses
Puntos: 1
sorrym, no hagas caso a las 3 líneas de abajo, al final lo acomodé a tu tabla/columnas
__________________
ACervantes

[El éxito dura hasta que alguien las caga; los errores son eternos]
  #4 (permalink)  
Antiguo 03/07/2006, 15:21
Avatar de acervantes  
Fecha de Ingreso: agosto-2003
Ubicación: Madrid
Mensajes: 311
Antigüedad: 20 años, 8 meses
Puntos: 1
Las personas siempre nos complicamos la vida, la solución es tan sencilla como:
Código PHP:
select trunc(months_between(sysdateto_date(clie_fecha_nacimiento,'dd/mm/yyyy'))/12from clientes 
ten en cuenta el formato de la fecha por si acaso.

recomendable dar una ojeada a todas las funciones para saber como atacar mejor el problema
__________________
ACervantes

[El éxito dura hasta que alguien las caga; los errores son eternos]
  #5 (permalink)  
Antiguo 22/11/2009, 11:55
 
Fecha de Ingreso: julio-2007
Ubicación: /home/victor
Mensajes: 114
Antigüedad: 16 años, 8 meses
Puntos: 0
Respuesta: Calculo de la Edad de uno

Mejor así

Código PHP:
 select trunc(months_between(sysdateto_char(clie_fecha_nacimiento,'dd/mm/yyyy'))/12from clientes 
  #6 (permalink)  
Antiguo 24/11/2009, 07:41
Avatar de 8vio  
Fecha de Ingreso: marzo-2008
Ubicación: Detras del monitor
Mensajes: 168
Antigüedad: 16 años
Puntos: 6
Respuesta: Calculo de la Edad de uno

o asi jejeje:

Código:
SELECT trunc((SYSDATE - to_date('08/08/1985','dd/mm/rrrr'))/365,0) FROM dual


SELECT trunc((SYSDATE - to_date(fecha_nacimiento,'dd/mm/rrrr'))/365,0) FROM dual

Asi tambien sirver

Código:
TRUNC((SYSDATE-t.fecha_nac)/365.25)

Última edición por 8vio; 24/11/2009 a las 08:40 Razón: Otro metodo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:57.