[firebase-br] Ajuda para um Select Sum

Carlos Midia carlosmidia2013 em gmail.com
Qua Fev 24 12:51:34 -03 2016


Estou usando o componente RDprint.

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

> 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