[firebase-br] Ajuda para um Select Sum

Rafael - FAV Ferro e Aço rafael em favcomercial.com.br
Qua Fev 24 08:29:35 -03 2016


Acho que entendi Carlos.
No caso, não tenho experiência com Delphi pra te ajudar, desculpe.
É relatório mesmo ou listagem em tela?
Se for listagem, vc mesmo pode somar enquanto percorre os resultados para
mostrar.
Se for relatório, tenho certeza que ele tem alguma ferramenta que possui a
função de totalizar o valor de alguma coluna para apresentar no final.
Abraços.


--
Rafael Cardoso Stella



Em 24 de fevereiro de 2016 08:08, Carlos Midia <carlosmidia2013 em gmail.com>
escreveu:

> Bom dia, Rafael desde já agradeço pela ajuda.
> minha situação é a seguinte:
> no relatório que preciso tem alguns filtros sendo o total de 7 no caso deu
> fazer
> um segundo select ex:
>
> Select sum(p.Valor_Total) as Total_Geral
> from PEDIDO p
>  where p.Data_Pedido between :pDataini and :pDatafim
>  and p.Fechado = :pConfirmada
>
> terei que repetir estes 7 parâmetros, só se tivesse como eu pegar o
> resultado do primeiro select .
> tem outra maneira mais apropriada?
> estou usando o delphi e clientdataset.
>
>
> Em 23 de fevereiro de 2016 13:46, Rafael - FAV Ferro e Aço <
> rafael em favcomercial.com.br> escreveu:
>
> > Olá amigo.
> > Sintaticamente o comando está errado.
> > Como você tem várias colunas e apenas 1 delas tem função de
> "agrupamento",
> > você deve incluir todas as demais no GROUP BY.
> > No caso, seu select deveria ser assim:
> >
> > Select p.Id, p.Pedido_Num, p.Cliente, p.Data_Pedido, p.Valor_Total,
> > sum(p.Valor_Total) as Total_Geral from PEDIDO p
> >  where p.Data_Pedido between :pDataini and :pDatafim
> >  and p.Fechado = :pConfirmada
> >  GROUP BY p.Id, p.Pedido_Num, p.Cliente, p.Data_Pedido, p.Valor_Total
> > order by p.data_pedido
> >
> > Agora, logicamente também tem uma falha aí.
> > Se você quer o total de todos os registros que serão trazidos, você deve
> > fazer essa soma fora da consulta.
> > Muitas ferramentas de relatório têm essa função de acumulador.
> >
> > Você pode fazer também uma consulta paralela para pegar APENAS a
> somatória:
> >
> > Select sum(p.Valor_Total) as Total_Geral
> > from PEDIDO p
> >  where p.Data_Pedido between :pDataini and :pDatafim
> >  and p.Fechado = :pConfirmada
> >
> > Perceba que essa consulta sempre retornará apenas UM registro.
> > Espero que tenha ajudado.
> >
> >
> > --
> > Rafael Cardoso Stella
> >
> >
> >
> > Em 23 de fevereiro de 2016 12:36, Carlos Midia <
> carlosmidia2013 em gmail.com>
> > escreveu:
> >
> > > Bom dia a todos, tenho um relatório com o seguinte select:
> > >
> > > Select p.Id, p.Pedido_Num, p.Cliente, p.Data_Pedido, p.Valor_Total,
> > > sum(p.Valor_Total) as Total_Geral from PEDIDO p
> > >  where p.Data_Pedido between :pDataini and :pDatafim
> > >  and p.Fechado = :pConfirmada
> > >  GROUP BY p.id order by p.data_pedido
> > >
> > > porém preciso do valor total dos pedidos mais esta dando erro devido ao
> > SUM
> > >
> > > ex:
> > >
> > > 1 002 VENDA AO CONSUMIDOR 23/02/2016 10,00
> > > 2 003 NOME DO CLIENTE           23/02/2016 10,00
> > > =======================================
> > > TOTAL                                                         20,00
> > > ______________________________________________
> > > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > > http://www.firebase.com.br/fb/artigo.php?id=1107
> > > Para consultar mensagens antigas:
> > > http://www.firebase.com.br/pesquisa_lista.html
> > >
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > http://www.firebase.com.br/fb/artigo.php?id=1107
> > Para consultar mensagens antigas:
> > http://www.firebase.com.br/pesquisa_lista.html
> >
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas:
> http://www.firebase.com.br/pesquisa_lista.html
>



Mais detalhes sobre a lista de discussão lista