Consulta SQL em DBF

Delphi

09/07/2008

Olá!

Como posso fazer esta consulta em um DBF?

      DMGuiaDeTrafego.QuerySomaEstado.Close;
      DMGuiaDeTrafego.QuerySomaEstado.SQL.Clear;
      DMGuiaDeTrafego.QuerySomaEstado.SQL.Add(´select * from GUIA where DATA>=:pINICIAL and DATA<=:pFINAL group by DESTIUF´);
      DMGuiaDeTrafego.QueryRelatorioGuia.ParamByName(´pINICIAL´).AsDateTime := StrToDate(CrnDateEditPrimeiraData.Text);
      DMGuiaDeTrafego.QueryRelatorioGuia.ParamByName(´pFINAL´).AsDateTime := StrToDate(CrnDateEditUltimaData.Text);
      DMGuiaDeTrafego.QuerySomaEstado.Open;



´select * from GUIA where DATA>=:pINICIAL and DATA<=:pFINAL group by DESTIUF´


Sempre me retrorna este erro!

When GROUP BY exists, every simple field in projectors must be in GROUP BY



Eu quero agrupar todas as UF do campo DESTIUF no período de data estabelecido para pesquisa!
Alguém pode me ajudar? Lembrando que estou tentanto fazer isto em um DBF!

Agradeço ajuda(s).


Devmedia

Devmedia

Curtidas 0

Respostas

Brunodsr

Brunodsr

09/07/2008

Cara.. sinceramente nao entendi.

Vc usa o group by p/ agrupar valores como soma, quantidade etc. Enfim, dados que possam ser agrupados ao campo escolhido.

Se vc ta querendo a quantidade de UFs agrupadas ao campo DESTIUF, teu SQL devia estar assim:

select DESTIUF, count(*) from GUIA where DATA>=:pINICIAL and DATA<=:pFINAL group by DESTIUF 


Se for apenas listar todos os campos em funcao do campo DESTIUF, basta usar um order by ao inves do group by. Exemplo:

select DESTIUF, count(*) from GUIA where DATA>=:pINICIAL and DATA<=:pFINAL order by DESTIUF 


Espero ter ajudado


GOSTEI 0
POSTAR