Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

EderDias

[Resolvido] Relatório Sintético

Recommended Posts

Ola...pessoal

 

tou montando um relatorio sintetico onde ele deve agrupar por periodo e por placa.

 

deveria mostrar assim:

 

PLACA......KMPER......LITROS

===================

HHH5252 100 50

RRR7878 200 30

UUU6565 300 50

===================

TOTAL..........600 130

mas ele mostra assim:

 

PLACA......KMPER......LITROS

===================

HHH5252 100 50

RRR7878 100 15

RRR7878 100 15

UUU6565 300 50

===================

TOTAL..........600 130

NOTEM que não agrupou a placa RRR7878.

 

minha sql ta assim:

 

SELECT sum(Abaste.KmPer) as Total1, 
Sum(Abaste.Litros) as Total2,
Abaste.Codigo, Abaste.Data, Abaste.Media, Abaste.CodVei, Vei.Codvei, 
Vei.Placa, Vei.Marca, Vei.Veiculo
FROM ABASTE, VEI 
WHERE 
Abaste.Data = "08/01/2005" And
Abaste.CodVei = Vei.CodVei 
Group By Abaste.KmPer, Abaste.Litros, Abaste.Codigo, Abaste.Data, 
Abaste.Media, Abaste.Codvei, Vei.Codvei, Vei.Placa, Vei.Marca, Vei.Veiculo 
Order By Abaste.Data, Vei.Placa

Por favor alguem poderia me dizer porque não ta agrupando

 

Grato

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente dessa forma, porém acredito que não vá funcionar...

 

Porque?

R.: Acredito que campos como Abaste.Codigo, Abaste.Data, Abaste.Media são campos que podem mudar de uma linha para outra...

 

Sugiro que rode esse sql abaixo no seu Gerenciador de banco de dados e compare as linhas, e verifique onde os campos selecionados estão diferentes e não permitindo assim o agrupamento...

 

 

SELECT sum(Abaste.KmPer) as Total1, Sum(Abaste.Litros) as Total2,

Abaste.Codigo, Abaste.Data, Abaste.Media, Abaste.CodVei, Vei.Codvei,

Vei.Placa, Vei.Marca, Vei.Veiculo

FROM ABASTE, VEI

WHERE Abaste.Data = "08/01/2005"

And Abaste.CodVei = Vei.CodVei

Group By Vei.Placa, Abaste.Codigo,

Abaste.Data, Abaste.Media,

Abaste.Codvei, Vei.Codvei,

Vei.Marca, Vei.Veiculo

Order By Abaste.Data, Vei.Placa

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente dessa forma, porém acredito que não vá funcionar...

R.: é realmente não deu certo

 

 

Sugiro que rode esse sql abaixo no seu Gerenciador de banco de dados e compare as linhas, e verifique onde os campos selecionados estão diferentes e não permitindo assim o agrupamento...

R.:eu rodei e apareceu os dois registros............mas não descobri o porque de ele não juntar

 

neste caso Teria alguma solução, pois é uma relatorio simples....

 

você Teria alguma ideia...?? :unsure:

 

é Paradox....

 

Grato

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta assim:

 

SELECT sum(Abaste.KmPer) as Total1, Sum(Abaste.Litros) as Total2,

Vei.Placa, Vei.Marca, Vei.Veiculo

FROM ABASTE, VEI

WHERE Abaste.Data = "08/01/2005"

And Abaste.CodVei = Vei.CodVei

Group By Vei.Placa, Vei.Marca, Vei.Veiculo

Order By Vei.Placa

Compartilhar este post


Link para o post
Compartilhar em outros sites

Hugo ....carinha deu certo...

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

 

Hugo...agora eu gostaria que você me explicasse uma coisinha....pois agora fiquei confuso pelo seguinte.

 

 

SELECT sum(Abaste.KmPer) as Total1, Sum(Abaste.Litros) as Total2,
Vei.Placa, Vei.Marca, Vei.Veiculo
FROM ABASTE, VEI 
WHERE Abaste.Data = "08/01/2005"
And Abaste.CodVei = Vei.CodVei
Group By Vei.Placa, Vei.Marca, Vei.Veiculo 
Order By Vei.Placa

*eu aprendi que todos os campos da tabela que estão na WHERE devem estar obrigatoriamente na select antes do FROM

e o campo de DATA você não colocou(e funcionou sem ele) http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

e se eu colocar ele não da certo...

 

*um camara tbem me falou que todos os campos que eu colocar no select antes do FROM devem estar obrigatoriamente no GROUP BY

 

poderia me dar uma breve explicação sobre estar regrinhas??porque agora fiquei confuso.

 

Grato http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala Eder, beleza?

 

Bom, vamos lá velhinho...

 

 

Seguinte...:

 

*eu aprendi que todos os campos da tabela que estão na WHERE devem estar obrigatoriamente na select antes do FROM

e o campo de DATA você não colocou(e funcionou sem ele) http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

e se eu colocar ele não da certo...

R: Não é Obrigatório a EXIBIÇÃO em uma consulta de um campo que funciona como filtro... isso não é regra de ter que colocar o campo FILTRO como um Resultado da clausula SELECT...

 

*um camara tbem me falou que todos os campos que eu colocar no select antes do FROM devem estar obrigatoriamente no GROUP BY

R: Com relação aos campos que estão no SELECT, apenas os campos que não são resultados de funções ou cálculos (Ex.: SUM, AVG, MIN, MAX, etc), devem obrigatoriamente estar na clausula GROUP BY....

 

 

Espero tê-lo ajudado...

 

Qualquer coisa é só postar...

 

 

Abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.