PDA

Ver la Versión Completa : calcular edad en la consulta


maycampana
18-12-2013, 17:01:55
Hola, necesito saber si puedo calcular la edad en el SELECT en un campo calculado.
Uso D6 y mi base de datos es Paradox, quiero calcular la edad con la fecha de nacimiento que tengo guardada en el campo Fechanc de la tabla Datos. He probado algunas opciones que encontré en los foros pero sin suerte, no estoy segura de que sirvieran para delphi. El listado que genero lo guardo en una planilla Excel. Muchas Gracias.

cloayza
18-12-2013, 17:33:13
En este hilo Calcular Edad completa (http://www.clubdelphi.com/foros/showthread.php?t=44379) en el #2 esta la respuesta que buscas...

Saludos cordiales

maycampana
18-12-2013, 19:38:30
Hola Cloayza, no se cómo hacer para poner una función en el SELECT. Estoy haciendo una simple consulta de unos cuantos datos personales de la tabla "datos", con un componente query, entre ellos extraigo la fecha de nacimiento. Lo que quisiera hacer es ir calculando la edad de todas las personas de la lista. No se si se puede hacer con Delphi, probé TIMESTAMPDIFF(YEAR,Fechanac,CURRENT_DATE) as edad, me da error Invalid of keyword token SELECT line number 4. No se si sirve para Delphi, no le encuentro el error. Bueno muchas gracias, si alguien sabe gracias.

cloayza
18-12-2013, 20:23:02
Lo que podrías hacer es intentar con un parámetro en la consulta, si solo necesitas la diferencia en años...



Query.SQL.Clear
Query.SQL.Add('Select FECHANAC, :CurrentYear - extract(year from FECHANAC)';
...
Query.ParamByName('CurrentYear').Value:=2013;

Query.Open;


No he probado este código pero es una idea...

Saludos cordiales