none
Sql 2005 - Problemas com query RRS feed

  • Pergunta

  •  

    Bom dia !

     

    Pessoal ,

     

    Estou com dificuldades em uma situação que me encontro .

     

    Tenho duas tabelas , a tabela Atendimento e a tabela Estoque . Na tabela atendimento tenho a coluna QtdVendida onde marca a quantidade de produtos que foi vendida no atendimento , e na tabela Estoque tenho a coluna SaldoProduto que seria o estoque atual do produto . O que estou tentando fazer é o seguinte , tenho valores no SaldoProduto mas preciso abater neste saldo a quantidade vendida para atualizar esta tabela corretamente .

     

    Tentei o comando abaixo , ele até faz a subtração dos campos , mas não está atrelando o produto , assim sendo ele abate todos aleatoriamente sem pegar a QtdVendida do produto x e abater o SaldoProduto deste produto x .

     

    declare @Conta varchar (20)

    select @Conta = Quantidade from ProdutoAtendimento

    Update galestoque set saldo = saldo - @Conta

    where referencia in (select referencia from galestoque)

     

    Espero que possam me ajudar , se não tiver muito claro coloco mais informações .

     

     

     

     

    Obrigado por enquanto .

     

    terça-feira, 28 de outubro de 2008 12:14

Todas as Respostas

  • Sanches,

     

    Primeiramente, seja bem vindo ao fórum, esperamos ajudar da melhor possível, de acordo com o nosso conhecimento e disponibilidade, faça parte desta grande comunidade, nos ajudar e compartilhando o seu conhecimento, criando ainda mais conhecimento e enriquecendo ainda mais esta grande fonte de sabedoria.

     

    Já tentou assim:

     

     

    Code Snippet

    declare @Conta varchar (20)

     

    select @Conta = Quantidade from ProdutoAtendimento

     

    Update galestoque

    set saldo = G.saldo - @Conta

    From GalEstoque G Inner Join GalEstoque G1

                       On G.Referencia = G1.Referencia

     

     

    terça-feira, 28 de outubro de 2008 12:39
    Moderador
  • Júnior ,

     

    Obrigado pelo recepção . Estou engatinhando ainda , mas tenho estudado bastante .

     

     

    Então tentei desta forma , somente substitui as tabelas corretas no inner join que está com a mesma tabela acima . Mas ao executar ele está subtraindo errado , a query não está atrelando a quantidade do produto para poder fazer esta subtração .

    Como fiz o teste para validar a query , deixei uma certa referência de produto com quantidade igual a 10 e o seu saldo em estoque igual a 100 . Quando rodei o comando meu saldo ficou com 99 e todas outras referências estão subtraindo apenas 1 , acredito que seja porque praticamente toda quantidade da tabela está igual a 1 .

    O único problema está em pegar a Quantidade do Produto e estar subtraindo do saldo deste mesmo produto .

     

    terça-feira, 28 de outubro de 2008 13:28