Soma complicada no SQL

Firebird

27/11/2003

e ai pessoal?

bom, to precidsando de uma pequena ajuda:

tenho uma tabelas de produtos vendidos (CodPro, Venda, Total...)
eu preciso obter o soma geral do Total, somente se a soma do Total agrupado por Venda for > 10. deu pra entender?

ex:
select SUM(Total) from ProdVendas
group by Venda
having SUM(Total) > 10

mas fazendo desse jeito, para cada venda ele retorna um registro, eu preciso da soma de tudo...

obrigado

ps : isso eh pra uma sub-query


Delphistar

Delphistar

Curtidas 0

Respostas

Afarias

Afarias

27/11/2003

|deu pra entender?

eu particularmente NÃO


T+


GOSTEI 0
Delphistar

Delphistar

27/11/2003

nao? deixa eu explicar melhor...

tendo os dados na tabela (CodVenda | Valor):

1 | 8,00
1 | 4,00
2 | 2,00
2 | 5,00
3 | 11,00

sendo assim os totais das vendas são:
1 = 12,00
2 = 7,00
3 = 11,00

o que eu quero eh um total geral, mas soh quando o total da venda for maior que 10,00 (no exemplo soh as vendas 1 e 3)...

da para eu obter o resultado 23,00 (total da 1 + total da 3) usando um unico SELECT?


GOSTEI 0
Afarias

Afarias

27/11/2003

ok... tem algumas formas::

1) criar uma view

create view total_vendas (codvenda, total) as
select codvenda, sum(valor) from vendas
group by codvenda
having sum(valor) > 10

e então::

select sum(total) from total_vendas;


2) um SELECT como::

select sum(valor) from vendas
where codvenda in (select codvenda from vendas
group by codvenda having sum(valor) > 10)


3) um stored proc.


T+


GOSTEI 0
Delphistar

Delphistar

27/11/2003

valew afarias, eu fiz usando sub-query e deu certo...

soh + uma pergunta:
eh possivel obter de uma sub-query + de 1 campo?

ex:
select c.codigo, c.nome,
(select sum(total) from vendas where codcli = c.codigo) comprado
from clientes c

daria pra obter alem do total comprado, o numero de compras, por exemplo, sem ter q usar outra sub-query?

ps: eu chamo de sub-query, tem outro nome?


GOSTEI 0
Afarias

Afarias

27/11/2003

|eh possivel obter de uma sub-query + de 1 campo?

eu ACHO q não...


|eu chamo de sub-query, tem outro nome?

eu acho ´sub-query´ um nome bem adequado ;)



T+


GOSTEI 0
POSTAR