Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal,
Já lido com BD de dados há algum tempo, estou fazendo uma consulta com left join que até agora não descobri o que está de errado com ela e já tentei de diversas formas e não retorna o resultado esperado e é o seguinte: tenho a tabela PROORREL com as pks (emp_codemp, rel_codigo, var_codigo) e PROLANCA (emp_codemp, var_codigo, lan_data, lan_hora), eu quero a consulta exiba todas as informações do campo PROORREL.var_codigo, independentemente se existe os não informações no campo PROLANCA.lan_valor, segue abaixo o que foi feito:
Informações da PROORREL:
**select count(var_codigo) from proorrel r**
**where r.emp_codemp = '001' and**
r.rel_codigo = '103';
Total: 106
Informações da PROLANCA:
**select count(lan_valor) from prolanca l**
**where l.lan_data = to_date('22/02/2011', 'dd/mm/yyyy') and**
l.lan_hora = 'XXXX';
Total: 1
O selects que foram utilizados está retornando nulo e não as 106 linhas da PROORREL:
select r.var_codigo, l.lan_valor
from proorrel r,
prolanca l
where r.emp_codemp(+) = l.emp_codemp and
r.var_codigo(+) = l.var_codigo and
r.emp_codemp = '001' and
r.rel_codigo = '103' and
l.lan_data = to_date('22/02/2011', 'dd/mm/yyyy') and
l.lan_hora = 'XXXX';
Total: nenhuma linha.
select r.var_codigo, l.lan_valor
from proorrel r,
prolanca l
where r.emp_codemp = l.emp_codemp(+) and
r.var_codigo = l.var_codigo(+) and
r.emp_codemp = '001' and
r.rel_codigo = '103' and
l.lan_data = to_date('22/02/2011', 'dd/mm/yyyy') and
l.lan_hora = 'XXXX';
Total: nenhuma linha.
select r.var_codigo, l.lan_valor
from proorrel r
left outer join prolanca l on
r.emp_codemp = l.emp_codemp and
r.var_codigo = l.var_codigo
where r.emp_codemp = '001' and
r.rel_codigo = '103' and
l.lan_data = to_date('22/02/2011', 'dd/mm/yyyy') and
l.lan_hora = 'XXXX';
Total: nenhuma linha.
Alguém tem uma solução? A versão do BD é a Oracle 11g.
Carregando comentários...