SQL. Caso de desespero total!!!!

Delphi

17/02/2003

Preciso listar todos os produtos vendidos e devolvidos agrupados por vendedor, estou utilizando a seguinte SQL.

Select ven.Nome,
pro.Nome,
sum(ite.Quant)
From Pedidos Ped, Itens Ite, Produtos Pro, Vendedor Ven, Mem_Ope Mem
Where ( Ite.Num_Ped = ped.Num_Ped )
and ( pro.Cod_Prod = ite.Cod_Prod )
and ( ven.Cod_Ven = ped.Cod_Ven )
and ( ped.tipo = ´01´ )
Group By ven.Nome, pro.Nome

Union

Select ven.Nome,
pro.Nome,
sum(ite.Quant)
From Pedidos Ped, Itens Ite, Produtos Pro, Vendedor Ven, Mem_Ope Mem
Where ( Ite.Num_Ped = ped.Num_Ped )
and ( pro.Cod_Prod = ite.Cod_Prod )
and ( ven.Cod_Ven = ped.Cod_Ven )
and ( ped.tipo = ´02´ )
Group By ven.Nome, pro.Nome


O único problema é que gostaria que as quantidades de produtos vendidos e devolvidos ficassem lado a lado e não uma abaixo da outra.

Alguém pode ajudar-me?

Desde já agradeço.

Marcos.


M_gab

M_gab

Curtidas 0

Respostas

Anonymous

Anonymous

17/02/2003

Qual bd ?

Sugestao p/Oracle

select vendedor,comp,dev
from
(Select ven.Nome vendedor,
pro.Nome,
sum(ite.Quant) comp
From Pedidos Ped, Itens Ite, Produtos Pro, Vendedor Ven, Mem_Ope Mem
Where ( Ite.Num_Ped = ped.Num_Ped )
and ( pro.Cod_Prod = ite.Cod_Prod )
and ( ven.Cod_Ven = ped.Cod_Ven )
and ( ped.tipo = ´01´ )
Group By ven.Nome, pro.Nome

Union

Select ven.Nome,
pro.Nome,
sum(ite.Quant) dev
From Pedidos Ped, Itens Ite, Produtos Pro, Vendedor Ven, Mem_Ope Mem
Where ( Ite.Num_Ped = ped.Num_Ped )
and ( pro.Cod_Prod = ite.Cod_Prod )
and ( ven.Cod_Ven = ped.Cod_Ven )
and ( ped.tipo = ´02´ )
Group By ven.Nome, pro.Nome ) virtual

ou

Select ven.Nome,
pro.Nome,
sum(decode(ped.tipo,1,ite.Quant,0) comp,
sum(decode(ped.tipo,2,ite.Quant,0) dev,
From Pedidos Ped, Itens Ite, Produtos Pro, Vendedor Ven, Mem_Ope Mem
Where ( Ite.Num_Ped = ped.Num_Ped )
and ( pro.Cod_Prod = ite.Cod_Prod )
and ( ven.Cod_Ven = ped.Cod_Ven )
and ( ped.tipo in (´01´,´02´ )
Group By ven.Nome, pro.Nome


[]´s


GOSTEI 0
POSTAR