[firebase-br] Ajuda para um Select Sum

Carlos Midia carlosmidia2013 em gmail.com
Qua Fev 24 12:50:41 -03 2016


Boa tarde colegas, mesmo com o select abaixo não estou conseguindo pegar a
soma dos pedidos:

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

esta exibindo apenas o valor do registro



Em 24 de fevereiro de 2016 09:38, Alexandre <camilo em apollosistemas.com.br>
escreveu:

> Bom dia Carlos
> neste caso seria melhor voce utilizar a primeira opção que o Rafael te
> passou
>
> 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
>
>
> Alexandre Camilo
>
>
>
>
> Em 24/02/2016 08:08, Carlos Midia 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
>>
>>
> --
>
> Alexandre Camilo
> +55 27 3233-4143
>
>
>
> ______________________________________________
> 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