Consultar aniversariantes do Dia

Delphi

04/02/2004

Olá amigos, não encontrei na busca do fórum um post que tratasse do problema específico do Airton. Pos isso estou postando a MP que ele me enviou questionando e também uma das soluções possíveis. Sintam-se à vontade para fazer suas considerações.
ola, meu nome é Airton estou estudando SQL e tenho que fazer um relatorio em SQL no Delphi utilizando uma Query (Aniversariantes do DIA comparando com a data do sistema) e nao tenho muita experiencia no assunto, por isso te peço uma ajuda se for possivel. estou usando o codigo;
begin
  with query1 do
  begin
    Close;
    SQL.Clear;
    SQL.add(´SELECT DISTINCT nome, datanasc from Alunos.db´);
    SQL.add(´WHERE EXTRACT(MONTH FROM datanasc) = 1´);
    Open;
  end;
end;

Airton,

Eu solucionaria este problema da seguinte forma:

var
  D,M,A : Word;
begin
  DecodeDate (Date, A, M, D);
  with Query1 do
  begin
    Close;
    SQL.Clear;
    SQL.Add (´SELECT DISTINCT nome, datanasc FROM Alunos´);
    SQL.Add (´WHERE EXTRACT(DAY FROM datanasc) = :dia´);
    SQL.Add (´AND EXTRACT(MONTH FROM datanasc) = :mes´);
    // Opcional se quiser trazer em ordem alfabética
    SQL.Add (´ORDER BY nome´);
    ParamByName(´dia´).AsInteger := D;
    ParamByName(´mes´).AsInteger := M;
    Open;
  end;
end;



Allen74

Allen74

Curtidas 0
POSTAR