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