테이블명 : 대륙
code / dae
1 / 아시아
2 / 유럽
3 / 북미
테이블명 : 국가
code / country
1 / 한국
1 / 일본
1 / 중국
2 / 프랑스
2 / 독일
3 / 미국
3 / 멕시코
3 / 캐나다
select b.country from 대륙 a, 국가 b
where a.code = b.code
이렇게 조회하면 결과가 아래처럼 나오는데
1 / 한국
1 / 일본
1 / 중국
2 / 프랑스
2 / 독일
3 / 미국
3 / 멕시코
3 / 캐나다
제가 원하는건 이렇게 나오고 싶습니다.
1 / 한국
일본
중국
2 / 프랑스
독일
..
...
제가 알고 있는 기초지식으로는 도저히 저렇게 출력을 못하겠습니다 ㅠㅠ;;
도움 부탁드릴게요.
with TABLE_A(code, dae) as ( select 1, '아시아' from dual union all select 2, '유럽' from dual union all select 3, '북미' from dual ), TABLE_B(code, country) as ( select 1, '한국' from dual union all select 1, '일본' from dual union all select 1, '중국' from dual union all select 2, '프랑스' from dual union all select 2, '독일' from dual union all select 3, '미국' from dual union all select 3, '멕시코' from dual union all select 3, '캐나다' from dual ) select decode(t.rowno, 1, t.code) as code, t.country, decode(t.rowno, 1, t.code || '/') || t.country as txt from ( select row_number() over(partition by tb.code order by country desc) rowno, tb.* from table_a ta inner join table_b tb on tb.code = ta.code ) t order by t.code, t.rowno;