RES: [firebase-br] Sum Complicado
Edy GB
evandrobastiani2 em hotmail.com
Sex Ago 26 15:50:10 -03 2005
Ops.... esqueci um detalhe
SELECT V.ENTRADA, P.PRODUTO, SUM(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: Felipe Giotto <felipe em metasoftware.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 15:29:45 -0300
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
______________________________________________
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
Mais detalhes sobre a lista de discussão lista