não traz todos os registros

Dúvidas, dicas e truques de SQL, Select, Update, Delete, cláusulas, operações com joins, Funções em SQLs, etc
  

Mensagemem Sex, 17 Fev 2006 3:18 am

Seguinte turma, tenho essa query

Código: Selecionar todos
select   pc.reduzido
,        pc.descricao_conta
,        pl.mês
,        pl.ano
,        sum(decode(pl.tipo_lancamento, 'D', - pl.valor, pl.valor) ) saldo_previsto
,        sum(decode(lc.tipo_lancamento, 'D', - lc.valor, lc.valor) ) saldo_realizado
from     plano_de_contas     pc
,        previsao_lancamento pl full outer join lancamento_contabel lc
      on lc.reduzido = pl.reduzido
where    pc.reduzido    = pl.reduzido
and      pc.reduzido    = nvl(:pconta, pc.reduzido)
and      pl.mês         = nvl(:pmes  , pl.mês)
and      pl.ano         = nvl(:pano  , pl.ano)
group by pc.reduzido
,        pc.descricao_conta
,        pl.mês
,        pl.ano


pc -- tem todas as contas

lc -- tem algumas contas
pl -- tem algumas contas



a query ta trazendo os registros que tenho na PL ... porem há uma conta na LC que não existe na PL mas eu quero que traga esse registro também...



me entenderam ??
Se puderem me ajudar agradeco !!!!
schnu
Localização: Dongguan - Guangdong - China

Mensagemem Qua, 22 Fev 2006 2:58 pm

Tenta colocar uns OUTER JOINS...

Código: Selecionar todos
select   pc.reduzido
,        pc.descricao_conta
,        pl.mês
,        pl.ano
,        sum(decode(pl.tipo_lancamento, 'D', - pl.valor, pl.valor) ) saldo_previsto
,        sum(decode(lc.tipo_lancamento, 'D', - lc.valor, lc.valor) ) saldo_realizado
from     plano_de_contas     pc
,        previsao_lancamento pl full outer join lancamento_contabel lc
      on lc.reduzido = pl.reduzido
where    pc.reduzido    = pl.reduzido(+)
and      pc.reduzido    = nvl(:pconta, pc.reduzido)
and      pl.mês(+)         = nvl(:pmes  , pl.mês)
and      pl.ano(+)         = nvl(:pano  , pl.ano)
group by pc.reduzido
,        pc.descricao_conta
,        pl.mês
,        pl.ano


:-o
dr_gori
Localização: Portland, OR USA

Thomas F. G

Você já respondeu a dúvida de alguém hoje?
http://glufke.net/oracle/search.php?search_id=unanswered

Mensagemem Seg, 27 Fev 2006 12:30 am

Dr. Gory

como estou usando o Full outer Join no From eu não posso utilizar o mecanismo de outer join na where, ou seja continuo com o problema.

Se alguém tiver outra ideia manda ai



Voltar para Oracle !!!
schnu
Localização: Dongguan - Guangdong - China

Mensagemem Seg, 27 Fev 2006 2:39 am

Problema resolvdio, o meu problema é q uma das tabelas utilizava mês como number e a outra era date ... tive q fazer tratamento com to_char


Erro bobo meu !!!

Mas valeu a ajuda de todos


Voltar para Oracle !!!
schnu
Localização: Dongguan - Guangdong - China



Voltar para SQL

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante