Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
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?
Com esse código acho que resolve seu problema.
select p.codigo,
p.nome
from produtos p,
(select sum(entradas)-sum(saidas) saldo,
codigo
from saldos) s
where p.codigo = s.codigo (+)
and (p.saldo <> s.saldo) or s.saldo is null
Não sei se funciona pois não tenho como testar (Não tenho oracle instalado em casa, apenas na empresa).
Qualquer dúvida pode me add no skipe que te ajudo amigo.
meu skype: araujo.willian
ou no msn, mas no msn só entro fora do horário comercial: msn@williankleber.com
Tente
Mas acho que isto pode ser melhorado.