SQL, Alguém pode ajudar-me ?
13/02/2003
0
Vendedor Produto Quant
________________________________________________________
VENDEDOR FULANO DE TAL | ENXAGUANTE SENDAS 300 ML | 4333
VENDEDOR FULANO DE TAL | ENXAGUANTE SENDAS 300 ML | -670
Gostaria que ficasse assim:
Vendedor Produto Quant
_____________________________________________________________
VENDEDOR FULANO DE TAL | ENXAGUANTE SENDAS 300 ML | 4333 | -670
Abaixo segue minha SQL.
Select C.Nome,B.Nome,SUM(A.Quant)
From Pedidos, Itens A,Produtos B, Vendedor C, Mem_OPe D
Where Num_Ped=A.Num_Ped AND A.Cod_Prod=B.Cod_Prod AND
Cod_Ven=C.Cod_Ven And DT_Emi >= ´07/01/02´ AND DT_Emi <= ´10/31/02´
And D.Venda LIKE ´¬´+Tipo+´¬´ And D.Devol NOT LIKE ´¬´+Tipo+´¬´
Group By C.Nome,B.Nome
Union
Select C.Nome,B.Nome,SUM(A.Quant*(-1))
From Pedidos, Itens A,Produtos B, Vendedor C, Mem_OPe D
Where Num_Ped=A.Num_Ped AND A.Cod_Prod=B.Cod_Prod AND
Cod_Ven=C.Cod_Ven And DT_Emi >= ´07/01/02´ AND DT_Emi <= ´10/31/02´
And D.Devol LIKE ´¬´+Tipo+´¬´
Group By C.Nome,B.Nome
O que devo mudar para que fique com o lay-out da 2º opção
Desde já agradeço.
Marcos.[size=18:30e959528a][/size:30e959528a]
M_gab
Posts
13/02/2003
Fernando
SUM(A.Quant) ou A.Quant, uma das duas ira funcionar
13/02/2003
Flavio Sanches
(Select SUM(A.Quant*(-1))
From Pedidos, Itens A,Produtos B, Vendedor C, Mem_OPe D
Where Num_Ped=A.Num_Ped AND A.Cod_Prod=B.Cod_Prod AND
Cod_Ven=C.Cod_Ven And DT_Emi >= ´07/01/02´ AND DT_Emi <= ´10/31/02´
And D.Devol LIKE ´¬´+Tipo+´¬´ ) as Quant2
From Pedidos, Itens A,Produtos B, Vendedor C, Mem_OPe D
Where Num_Ped=A.Num_Ped AND A.Cod_Prod=B.Cod_Prod AND
Cod_Ven=C.Cod_Ven And DT_Emi >= ´07/01/02´ AND DT_Emi <= ´10/31/02´
And D.Venda LIKE ´¬´+Tipo+´¬´ And D.Devol NOT LIKE ´¬´+Tipo+´¬´
Group By C.Nome,B.Nome
---------------------------------------------------------------------------------
Ou seja: uma subquery no lugar do field.
Repare que eu não mexi no resto do código, eu somente copiei o segundo select pra dentro do primeiro e atribui o nome quant2 pro result. Vale vc dar uma enxugada no bagulho por que eu acho que está meio grande além da conta, mas só vc é capaz de fazer isso porque conhece a base que vc trabalha e a importância de cada argumento.
dá uma olhada depois me fala
bom trabalho
13/02/2003
Anonymous
13/02/2003
Navoid
mas mesmo assim, corrija a situação e use a última resposta, uma subquery no lugar do campo), isso resolvi, só que vc tem que ter certeza que a query só retorna um campo e um registro.
até
14/02/2003
M_gab
O Problema que o programador Clipper que montou a tabela fez o seguinte; concatenou todos os códigos de vendas dentro do mesmo campo ex:
Código de Venda 01, 02 ,03 ,04 ele colocou assim ´01020304´ e quando precisa comparar faz desta maneira:
IF Tipo $ Venda
// se o conteúdo de tipo estiver contido dentro de venda
// esse Pedido e Venda
Se possivel for gostaria da sua ajuda.
Desde já agradeço.
Marcos.
Clique aqui para fazer login e interagir na Comunidade :)