USANDO 2 SELECT COM SUM E EXIBIR A SOMA DE TODOS

 Tópico anterior Próximo tópico Novo tópico

USANDO 2 SELECT COM SUM E EXIBIR A SOMA DE TODOS

SQL / DATABASE

 Compartilhe  Compartilhe  Compartilhe
#490473 - 19/09/2019 09:16:28

AMELINHACODE
SAO PAULO
Cadast. em:Junho/2019


Bom dia Meninos,

fiz a seguinte SQL
"SELECT DISTINCT DESCRICAO, Produtos.codigo as varCodProd,   " & _
"(SELECT SUM(produtos_entrada_itens.QUANT) FROM produtos_entrada INNER JOIN produtos_entrada_itens ON produtos_entrada.CODIGO = produtos_entrada_itens.CODIGO_ENTRADA INNER JOIN produtos ON produtos.CODIGO = produtos_entrada_itens.CODIGO_PRODUTO WHERE (produtos.CODIGO = " & txtCodigo.Text & ")) AS varQuantEntrada,  " & _
"(SELECT SUM(pedidos_itens.QUANTIDADE) FROM pedidos INNER JOIN pedidos_itens ON pedidos.COD_PEDIDO = pedidos_itens.COD_PEDIDO WHERE (pedidos_itens.COD_PRODUTO = " & txtCodigo.Text & ")) AS varQuantVendida  " & _
"From Produtos  " & _
"Where (Codigo = " & txtCodigo.Text & ")"


ou seja,
Quero saber quanto entrou e saiu de um produto
Entao o primeiro SUM, eu somei todas as entradas de um produto especifico
"(SELECT SUM(produtos_entrada_itens.QUANT) FROM produtos_entrada INNER JOIN produtos_entrada_itens ON produtos_entrada.CODIGO = produtos_entrada_itens.CODIGO_ENTRADA INNER JOIN produtos ON produtos.CODIGO = produtos_entrada_itens.CODIGO_PRODUTO WHERE (produtos.CODIGO = " & txtCodigo.Text & ")) AS varQuantEntrada

no segundo SUM eu somei todas as vendas desse produto
SELECT SUM(pedidos_itens.QUANTIDADE) FROM pedidos INNER JOIN pedidos_itens ON pedidos.COD_PEDIDO = pedidos_itens.COD_PEDIDO WHERE (pedidos_itens.COD_PRODUTO = " & txtCodigo.Text & ")) AS varQuantVendida

DEU CERTO!

Porem eu preciso fazer isso com todos os produtos registra dados...
então se eu tiro os WHERE dos SELECT dos SUM´s ele soma todos as entradas de todos os produtos e coloca em cada linha de cada produto... ou seja, ele nao pega de cada produto... pega o valor geral e duplica para cada linha

Se deixo o Where (Codigo = " & txtCodigo.Text & ")" do final, sem os wheres dos SUM, ele duplica o mesmo produtos varias vezes, com a soma todos totais de todos os produtos
se retiro o Where (Codigo = " & txtCodigo.Text & ")" do final, sem os wheres dos SUM, ele NÃO duplica mais o mesmo produtos, porem aparece todos os produtos com  seus totais sendo a soma de todos os produtos registrados

que devo para fazer para somar as entradas/vendas de cada produto individual?

uso VB6 e SQL Server




#490481 - 19/09/2019 11:48:30

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Acho que nos ajudaria mais, mostrando a estrutura das tabelas ao invés da query...

_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#490483 - 19/09/2019 12:53:29

AMELINHACODE
SAO PAULO
Cadast. em:Junho/2019


 Anexos estao visíveis somente para usuários registrados

Segue os 3 exemplos funcionando somente com 1 produto de cada vez



#490489 - 21/09/2019 08:41:27

AMELINHACODE
SAO PAULO
Cadast. em:Junho/2019


conseguir:

SELECT  DESCRICAO, (SELECT SUM(produtos_entrada_itens.QUANT)
FROM produtos_entrada INNER JOIN
produtos_entrada_itens ON produtos_entrada.CODIGO = produtos_entrada_itens.CODIGO_ENTRADA
WHERE (produtos_entrada_itens.CODIGO_PRODUTO = Produtos.CODIGO)) AS varQuantEntrada, (SELECT SUM(pedidos_itens.QUANTIDADE)
FROM pedidos INNER JOIN
pedidos_itens ON pedidos.COD_PEDIDO = pedidos_itens.COD_PEDIDO
WHERE (pedidos_itens.COD_PRODUTO = Produtos.CODIGO) ) AS varQuantVendida
FROM Produtos ORDER BY PRODUTOS.CODIGO


funcionando da forma que eu queria



#490490 - 21/09/2019 10:40:56

MARCELOKROL
REBOUCAS
Cadast. em:Julho/2004


Não sei aonde esta chamando "isso", mas a dica que dou: cria uma VIEW ou uma PROCEDURE, fica melhor e mais rápido, ao chamar da aplicação!



#490491 - 22/09/2019 15:09:10

VERAPALI
CURITIBA
Cadast. em:Dezembro/2003


Faça a union dos seus selects...
Crie eles isoladamente e depois da um union nos bicinhos (detalhe: recomendo fazer por view)

Vera Lucia


#490492 - 23/09/2019 11:48:45

AMELINHACODE
SAO PAULO
Cadast. em:Junho/2019


Citação:
:
Faça a union dos seus selects...
Crie eles isoladamente e depois da um union nos bicinhos (detalhe: recomendo fazer por view)


com union conseguiria manter o resultado de cada select na mesma linha de cada produto? ou cada resultado sairia num linha cada?

Porque seria melhor por view?



 Tópico anterior Próximo tópico Novo tópico


Tópico encerrado, respostas não sao permitidas
Encerrado por AMELINHACODE em 23/09/2019 21:54:34