Filtro por idades

23/09/2004

Aew Galera!

Estou precisando filtrar uma tabela do interbase, aonde consta o campo data de nascimento, eu preciso filtrar todos os registros por exemplo que tem idade entre 16 a 30 anos como eu faço isso com segurança pois nessa table consta 70381 registros.

Atenciosamente!

Leandro Luís Müller.


Zunker

Respostas

23/09/2004

Jc_analista

select * from tabela where data between :data1-(16*360) and :data1-(30*360);

Bom acho que assim da certo sendo que a data1 e a data de hoje, nunca testei isso se der certo me fala.
Espero ter ajudado.


Responder Citar

23/09/2004

Paulo

with tabela do begin
close;
sql.clear;
sql.add(´select * from tabela where data between :d1 and :d2´);
parambyname(´d1´).asdate:=editdate1.date;
parambyname(´d2´).asdate:=editdate2.date;
open;
end;
É isso q você quer?


Responder Citar

23/09/2004

Jc_analista

ratificando
--------------------------------------------------------------------------------

select * from tabela where data between :data1-(30*360) and :data1-(16*360);

Bom acho que assim da certo sendo que a data1 e a data de hoje, nunca testei isso se der certo me fala.
Espero ter ajudado


Responder Citar

23/09/2004

Zunker

Galera cheguei a um resultado usando assim :

sql.Add(´WHERE Usu_nascimento BETWEEN :Data1 AND :Data2´); ParamByName(´data1´).AsDate := IncDay((IncYear(Now,-StrToInt(FrmConsultaUsuario.Eidade2.Text)-1)),1); ParamByName(´data2´).AsDate := IncYear(Now,-StrToInt(FrmConsultaUsuario.Eidade.Text));


:lol: :lol:


Responder Citar