SELECT *
FROM ( SELECT A.ID
B.NAME
A.SEQ
FROM A,B
WHERE A.ID = B.ID
) 1번 값
SELECT *
FROM ( SELECT A.ID
B.NAME
A.SEQ
FROM A,B
WHERE A.ID = B.ID
AND A.SEQ = B.SEQ
) 2번 값
1번 쿼리로 나온 결과값 밑으로 2번결과값을 붙히고 싶습니다.
UNION ALL 하니까 결과값이 서로 SORT되어서 섞혀버리는데
어떻게 해야할찌 잘 모르겠습니다.
테스트를 못해봐서 잘될지 모르겠네요..
-- 방법1 SELECT ID, NAME, SEQ FROM ( SELECT 1 LV, A.ID, B.NAME, A.SEQ FROM A,B WHERE A.ID = B.ID UNION ALL SELECT 2 LV, A.ID, B.NAME, A.SEQ FROM A,B WHERE A.ID = B.ID AND A.SEQ = B.SEQ ORDER BY LV ); -- 방법2 SELECT ID, NAME, SEQ FROM ( SELECT LV, A.ID, B.NAME, A.SEQ FROM A,B , (SELECT LEVEL LV FROM DUAL CONNECT BY LEVEL <= 2) WHERE (LV = 1 AND A.ID = B.ID) OR (LV = 1 AND A.ID = B.ID AND A.SEQ = B.SEQ) ORDER BY LV );