select
a.*, b.content
from
(
select '1' eduseq, 'a' id, 'seoul' place from dual
union all
select '1' eduseq, 'b' id, 'jeju' place from dual
union all
select '2' eduseq, '' id, 'jeju' place from dual
union all
select '3' eduseq, '' id, 'busan' place from dual
)a,
(
select '1' eduseq, 'a' id, 'good' content from dual
union all
select '3' eduseq, '' id, 'very' content from dual
)b
where 1=1
and a.eduseq = b.eduseq(+)
and a.id = b.id(+)
order by a.eduseq
위 쿼리에서 id는 널일수도 아닐수도 있습니다.
널이면 eduseq가 고유값이라 문제가 되지 않는 상태인데
3번의 경우 id가 널이다 보니 위의 where절처럼 사용하면
3번의 content가 누락이 되서 나오지 않습니다.
그래서 id가 널인 경우 nvl()로 처리해서 해결은 했지만
방법이 어거지 같은 느낌이라
혹시 더 나은 좋은 해결책을 문의드려봅니다.