PostgreSQL - Ayuda con left outer join

 
Vista:

Ayuda con left outer join

Publicado por Javier (4 intervenciones) el 08/02/2006 01:46:09
Holaaaa gentita ayuda si alguien me puede decir en que estoy fallando no me funciona bien el left outer join

select plen.idccodso,
(coalesce(plen.sccoapor,0) + coalesce(plen.sccopram,0) + coalesce(plen.sccoprin,0) + coalesce(plen.sccocred,0) + coalesce(plen.sccomocr,0) +
coalesce(plen.sccoprmo,0) + coalesce(plen.sccofose,0) + coalesce(plen.sccoacti,0) + coalesce(plen.sccomult,0) + coalesce(plen.sccomant,0)) AS total_enviado,

(coalesce(plef.sccoapor,0) + coalesce(plef.sccopram,0) + coalesce(plef.sccoprin,0) + coalesce(plef.sccocred,0) + coalesce(plef.sccomocr,0) + coalesce(plef.sccoprmo,0) +
coalesce(plef.sccofose,0) + coalesce(plef.sccoacti,0) + coalesce(plef.sccomult,0) + coalesce(plef.sccomant,0)) AS total_efectuado

from scoplaen plen left outer join scoplani plef using(idccodso)
where plen.sccdfech BETWEEN '01/01/2006' and '31/01/2006' and
plef.sccdfech BETWEEN '01/01/2006' and '31/01/2006'

necesito que me muestre todos los registros de mi tabla scoplaen asi como tambien los registros que se encuentran en la tabla scoplani pero solo los que esten en la tabla scoplaen

algo asi

scoplaen
1 10.20 10/01/2006
2 25.30 25/01/2006
3 35.54 30/01/2006
4 45.60 05/02/2006

scoplani
2 20.30 26/01/2006
4 25.54 06/02/2006

deberia mostrarme los siguiente :

scoplaen scoplani
1 10.20 NULL
2 25.30 20.30
3 35.54 NULL

espero haberme explicado bien, necesito saber cual es el problema, lo que estube probando tambien era quitando todo el where y pues me hizo bien la consulta, pero necesito hacer que sea solo de un determinado periodo y cuando aplico el filtro pues me sale resultados inesperados, y necesariamente los registros que me devuelva de ambas tablas tienen que ser del mismo periodo bueno espero la respuesta de alguien gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder