RES: [firebase-br] Sum Complicado

Felipe Giotto felipe em metasoftware.com.br
Sex Ago 26 15:29:45 -03 2005


Porque nesse caso você não precisa utilizar um GROUP BY... Você só 
precisa quando quer utilizar alguma função, como SUM, AVG, COUNT, etc., 
e definir a condição de agrupamento onde as funções devem ser 
aplicadas... Nesse caso, o select que possui o SUM é como se fosse 
"independente" da consulta... Ele vai ser executado separadamente e o 
seu resultado vai ser retornado junto com os outros campos da tabela do 
SELECT principal.... Eu sei que isso ficou um pouco (muito :D ) confuso, 
mas eu não consegui achar uma forma mais fácil de explicar isso!!!

Abraços,

Felipe Giotto ;-)



Edy GB escreveu:

> Mais porque dá erro quando tento colocar um Group By ?
>
> SELECT V.ENTRADA, P.PRODUTO, V.TOTAL,(SELECT SUM(V1.TOTAL) FROM 
> GRITE01 V1
> WHERE V1.ENTRADA BETWEEN '01.08.2005' AND '30.08.2005'
> AND V1.CPRO = P.CODIGO) TOTPRO FROM GRITE01 V, GRPRO P WHERE
> V.ENTRADA BETWEEN '01.08.2005' AND '30.08.2005'
> AND V.CPRO = P.CODIGO
> Group By 1,2,3 ORDER BY 4 Desc,2
>
>
> From: "Augusto" <augusto em cmsolucoes.com.br>
> Reply-To: FireBase <lista em firebase.com.br>
> To: "FireBase" <lista em firebase.com.br>
> Subject: Re: RES: [firebase-br] Sum Complicado
> Date: Fri, 26 Aug 2005 13:52:48 -0300
>
> Tá ai Edy,
>
> feita e testada, com estrutura que vc mandou.
>
> SELECT
>  V.DATA_VENDA, P.PRODUTO, V.TOTAL,
>  (SELECT SUM(V1.TOTAL) FROM VENDAS V1
>  WHERE V1.DATA_VENDA BETWEEN '01.08.2005' AND '30.08.2005'
>  AND V1.PRODUTO = V.PRODUTO)
> FROM
>  VENDAS V, PRODUTOS P
> WHERE
>  V.DATA_VENDA BETWEEN '01.08.2005' AND '30.08.2005'
>  AND V.PRODUTO = P.PRODUTO
> ORDER BY
>  V.DATA_VENDA
>
>
>
> []'s
>
> Augusto
>
>
>
>
> ----- Original Message ----- From: "Edy GB" 
> <evandrobastiani2 em hotmail.com>
> To: <lista em firebase.com.br>
> Sent: Friday, August 26, 2005 11:50 AM
> Subject: RE: RES: [firebase-br] Sum Complicado
>
>
>> Não entendi o seguinte....... á SQL que preciso está em 2 Tabelas 
>> somente... Produto e Vendas
>>
>> Data_Venda........Produto..............Total1.........Total2
>> 08/08/2005........MARTELO...........150........350
>> 15/08/2005........MARTELO...........100........350
>> 19/08/2005........MARTELO............100........350
>> 19/08/2005........SERROTE.............290........290
>> 19/08/2005........ALICATE..............160........190
>> 21/08/2005........ALICATE.............  30........190
>>
>>
>>
>> Tabela Vendas = Data_Venda,  Total
>> Tabela Produtos =  Produto
>>
>>
>> From: "Jony" <jonyridel em yahoo.com.br>
>> Reply-To: FireBase <lista em firebase.com.br>
>> To: "'FireBase'" <lista em firebase.com.br>
>> Subject: RES: [firebase-br] Sum Complicado
>> Date: Fri, 26 Aug 2005 07:42:40 -0300
>>
>> Respondi isso em outro e-mail talvez vc não tenha visto. Fiz o teste 
>> aki e
>> funcionou.
>>
>> SELECT
>>   V.DATA,
>>   PRODUTOS.NOME,
>>   SUM(V.VALOR) AS TOTAL,
>>   (SELECT SUM(VDA.VALOR) FROM VENDAS VDA
>>    WHERE VDA.DATA BETWEEN '01.01.05' AND '30.01.05'
>>    AND VDA.PRODUTO_FK = V.PRODUTO_FK) AS TOTAL_PRODUTO FROM
>>   VENDAS V,
>>   JOIN PRODUTOS ON (VENDAS.PRODUTO_FK = PRODUTOS.PRODUTO_PK) Where
>>   V.DATA BETWEEN '01.01.05' AND '30.01.05'
>> GROUP BY V.DATA, PRODUTO.NOME
>>
>> Espero ter ajudado,
>>
>> ----------------------------
>> Jony Ridel
>> Grupo Êxito - Salvador - BA
>> ----------------------------
>>
>>
>> -----Mensagem original-----
>> De: lista-bounces em firebase.com.br 
>> [mailto:lista-bounces em firebase.com.br] Em
>> nome de Edy GB
>> Enviada em: quinta-feira, 25 de agosto de 2005 16:45
>> Para: lista em firebase.com.br
>> Assunto: [firebase-br] Sum Complicado
>>
>> To quebrando a cabeça aqui... mais acho que num tem jeito de fazer...
>>
>> Data_Venda........Produto..............Total1.........Total2
>> 08/08/2005........MARTELO...........150........350
>> 15/08/2005........MARTELO...........100........350
>> 19/08/2005........MARTELO............100........350
>> 19/08/2005........SERROTE.............290........290
>> 19/08/2005........ALICATE..............160........190
>> 21/08/2005........ALICATE.............  30........190
>>
>>
>> O Campo Total1 é o TOtal individual de Cada Item Vendido......  o Campo
>> Total2 é a Soma dos Produtos.. repare que no Item Martelo se somar a 
>> Coluna
>> do Total1 que tem Martelo (3 primeiras linhas) vai dar 350.... Mais 
>> acho que
>>
>> isso num é possivel... se alguem poder me confirmar isso ficaria 
>> Grato!!!!
>>
>> _________________________________________________________________
>> MSN Messenger: converse com os seus amigos online.
>> http://messenger.msn.com.br
>>
>>
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
>> Para editar sua configuração na lista, use o endereço
>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>
>> -- 
>> No virus found in this incoming message.
>> Checked by AVG Anti-Virus.
>> Version: 7.0.344 / Virus Database: 267.10.15/81 - Release Date: 
>> 24/8/2005
>>
>>
>> -- 
>> No virus found in this outgoing message.
>> Checked by AVG Anti-Virus.
>> Version: 7.0.344 / Virus Database: 267.10.15/81 - Release Date: 
>> 24/8/2005
>>
>>
>>
>>
>>
>>
>> _______________________________________________________
>> Yahoo! Acesso Grátis - Internet rápida e grátis.
>> Instale o discador agora! http://br.acesso.yahoo.com/
>>
>>
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
>> Para editar sua configuração na lista, use o endereço 
>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>
>> _________________________________________________________________
>> MSN Busca: fácil, rápido, direto ao ponto.  http://search.msn.com.br
>>
>>
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
>> Para editar sua configuração na lista, use o endereço 
>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>
>
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço 
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
> _________________________________________________________________
> MSN Messenger: converse com os seus amigos online. 
> http://messenger.msn.com.br
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço 
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>

-- 
Felipe Luiz Christófolli Giotto
Meta Tecnologia em Software, Ltda





Mais detalhes sobre a lista de discussão lista