Pular para o conteúdo
Visualizando 6 posts - 1 até 6 (de 6 do total)
  • Autor
    Posts
  • #83754
    Anônimo

      Estou tentando resolver um probleminha e gostaria de uma ajuda.

      Executando a seguinte string:

      select codigo,nome from produtos where saldo<>(select (sum(entradas)-sum(saidas)) as saldo from saldos where saldos.codigo=produtos.codigo)

      A intenção é selecionar todos os produtos com saldo diferente da tabela de saldos.

      O problema é que se na tabela de saldos não tiver o produto ele não aparece.

      Um produto com o saldo 100 e na tabela de saldos ele não existe… com esse select ele não aparece.

      O que posso fazer para contornar isso?

      #83757
      Avatar photoLeonardo Litz
      Participante

        Faz assim

        select codigo,nome
        from produtos
        where saldo nvl((select (sum(entradas)-sum(saidas)) as saldo
        from saldos
        where saldos.codigo=produtos.codigo) ,saldo)

        Coloque um nvl para tratar os produtos que na tenham saldo.

        Vlw Leonardo Litz

        #83758
        Avatar photoLeonardo Litz
        Participante

          Cara coloquei nvl(…, saldo), mas acho que no seu caso vc deve colocar nvl outra coisa que nao tenha no saldo… tipo 9999, pois é os produtos com saldo diferente….

          #83761
          MANOELRB
          Participante

            select codigo,nome from produtos where saldo(select (sum(entradas)-sum(saidas)) as saldo from saldos where saldos.codigo=produtos.codigo)

            SELECT CODIGO,NOME FROM PRODUTO
            LEFT OUTER JOIN JOIN SALDOS
            WHERE SALDOS.CODIGO = PRODUTOS.CODIGO
            GROUP BY CODIGO,NOME
            HAVING SALDO NVL(sum(entradas)-sum(saidas),0)

            TESTA DESSA FORMA VER SE VAI FUNCIONAR

            #83762
            MANOELRB
            Participante

              [quote=”MANOELRB”:1w6gc932]select codigo,nome from produtos where saldo(select (sum(entradas)-sum(saidas)) as saldo from saldos where saldos.codigo=produtos.codigo)

              SELECT CODIGO,NOME FROM PRODUTO
              LEFT OUTER JOIN JOIN SALDOS
              WHERE SALDOS.CODIGO = PRODUTOS.CODIGO
              GROUP BY CODIGO,NOME,SALDO
              HAVING SALDO NVL(sum(entradas)-sum(saidas),0)

              TESTA DESSA FORMA VER SE VAI FUNCIONAR[/quote]

              #83763
              Anônimo

                A solução proposta pelo Litz funcionou!
                Obrigado a todos pela atenção.

              Visualizando 6 posts - 1 até 6 (de 6 do total)
              • Você deve fazer login para responder a este tópico.
              plugins premium WordPress