Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Fabricio Brandão

Consula SQL

Recommended Posts

Amigos boa tarde,

 

tenho uma tabela onde armazeno os saldos dos meus produtos por filial a tabela possui os seguintes campos:

 

B2_FILIAL -> FILIAL

B2_COD -> CODIGO DO PRODUTO

B2_QATU -> SALDO ATUAL

 

Gostaria de montar uma consulta que me retorna-se o seguinte resultado (Exatamente assim):

 

PRODUTO | SALDO FILIAL XX | SALDO FILIAL YY | SALDO FILIAL ZZ |

 

LIXA PANO 20 30 10

LIXA PAPEL 0 10 7

 

 

 

alguem pode me ajudar ?

 

Fabricio Brandão

Compartilhar este post


Link para o post
Compartilhar em outros sites

colega, voce pode criar uma consulta de referencia cruzada:SELECTCASE WHEN B2_FILIAL = XX THEN B2_QATU AS SALDO_FILIAL_XX END,CASE WHEN B2_FILIAL = YY THEN B2_QATU AS SALDO_FILIAL_YY END,CASE WHEN B2_FILIAL = ZZ THEN B2_QATU AS SALDO_FILIAL_ZZ ENDFROM TABELAErik

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigos boa tarde,

 

tenho uma tabela onde armazeno os saldos dos meus produtos por filial a tabela possui os seguintes campos:

 

B2_FILIAL -> FILIAL

B2_COD -> CODIGO DO PRODUTO

B2_QATU -> SALDO ATUAL

 

Gostaria de montar uma consulta que me retorna-se o seguinte resultado (Exatamente assim):

 

PRODUTO | SALDO FILIAL XX | SALDO FILIAL YY | SALDO FILIAL ZZ |

 

LIXA PANO 20 30 10

LIXA PAPEL 0 10 7

 

 

 

alguem pode me ajudar ?

 

Fabricio Brandão

Acho que assim também dá....

 

SELECT SUM(B2_QATU), B2_PRODUTO, B2_FILIAL FROM TABELA

GROUP BY B2_PRODUTO, B2_FILIAL

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigos o problema e q quando uso o funcao SUM ele acaba dobrando os valores das colunas. Por exemplo de na filial XX eu tenho 10 unidades e na filial YY naum tenho nada ele e traz o resultado correto. Agora se nas duas filiai tiverem saldo ele soma os valores nas duas. Ja li e reli varios artigos sobre o mesmo mais naum consegui resolver o problema. Abaixo segue meinha consulta na integra:SELECT SB2.B2_COD, SB1.B1_DESC, SB1.B1_MARCA, SUM(CASE SB2.B2_FILIAL WHEN '01' THEN SB2.B2_QATU ELSE 0 END) AS Saldo_Matriz, SUM(CASE SB0.B0_FILIAL WHEN '01' THEN SB0.B0_PRV1 ELSE 0 END) AS Prc_Matriz, SUM(CASE SB2.B2_FILIAL WHEN '02' THEN SB2.B2_QATU ELSE 0 END) AS Saldo_Filial, SUM(CASE SB0.B0_FILIAL WHEN '02' THEN SB0.B0_PRV1 ELSE 0 END) AS Prc_FilialFROM SB2010 AS SB2 INNER JOIN SB1010 AS SB1 ON SB2.B2_COD = SB1.B1_COD INNER JOIN SB0010 AS SB0 ON SB2.B2_COD = SB0.B0_CODWHERE SB0.D_E_L_E_T_ <> '*' AND SB1.D_E_L_E_T_ <> '*' AND SB2.D_E_L_E_T_ <> '*' GROUP BY SB2.B2_COD, SB1.B1_DESC, SB1.B1_MARCAORDER BY SB1.B1_DESCGrato Fabricio Brandão

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.