[firebase-br] Exemplo de Real Utilidade para uma VIEW

Magno System magno em speet.com.br
Qui Jun 26 23:06:02 -03 2008


Pessoal, eis um caso de real utilidade para uma view que precisei fazer hoje

tenho duas tabelas:

VENDAS e VENDASCANCELADAS

Precisei totalizar a quantidade vendida por produto contido nas duas tabelas. O select deve me retornar apenas um código de cada produto com a totalização de sua quantidade.

A princípio fiz assim

SELECT V.CODIGO, SUM(V.QUANTIDADE) FROM VENDAS V GROUP BY 1
UNION 
SELECT VC.CODIGO, SUM(VC.QUANTIDADE) FROM VENDASCANCELADAS VC GROUP BY 1
ORDER BY 1

Tive um retorno assim

PRODUTO1 - 50        /* Quantidade acumulada da tabela VENDAS
PRODUTO1 - 10       /*  Quantidade acumulada da tabela VENDASCANCELADAS

Veja que na realidade eu queria: PRODUTO1 - 60

Solução:

Criei uma view chamada TODOSPRODUTOS onde o select era assim

SELECT V.CODIGO, V.QUANTIDADE FROM VENDAS V
UNION ALL
SELECT VC.CODIGO, VC.QUANTIDADE  FROM VENDASCANCELADAS VC

Fiz um SELECT assim:

SELECT T.CODIGO, SUM(T.QUANTIDADE) FROM TODOSPRODUTOS T GROUP BY 1

O resultado foi:

PRODUTO1 - 60

Taí, a VIEW resolveu meu problema. 



Software House Magno System
Site: www.magnosystem.com.br
Email: magno em speet.com.br
Tel.: (35)3371-2337 / (35) 9129-7634


Mais detalhes sobre a lista de discussão lista