WITH PARENT ( ID , NAME , SORT) AS ( SELECT '33' ,'서울' , 2 UNION ALL SELECT '34' ,'부산' , 3 UNION ALL SELECT '37' ,'대구' , 1 UNION ALL SELECT '38' ,'대전' , 5 ) , CHILD ( P_ID , NAME , SORT ) AS ( SELECT '37' ,'서구' , 2 UNION ALL SELECT '38' ,'대덕구' , 3 UNION ALL SELECT '38' ,'유성구' , 1 UNION ALL SELECT '33' ,'강남구' , 5 UNION ALL SELECT '37' ,'동구' , 5 ) SELECT ID , NAME , SORT FROM (SELECT ID , NAME , SORT , 1 M_SORT FROM PARENT UNION ALL SELECT P_ID , NAME , SORT, 2 M_SORT FROM CHILD ) A ORDER BY ID DESC , M_SORT , SORT
WITH parent AS ( SELECT 33 id, '서울' name, 2 sort UNION ALL SELECT 34, '부산', 3 UNION ALL SELECT 37, '대구', 1 UNION ALL SELECT 38, '대전', 5 ) , child AS ( SELECT 37 p_id, '서구' name, 2 sort UNION ALL SELECT 38, '대덕구', 3 UNION ALL SELECT 38, '유성구', 4 UNION ALL SELECT 33, '강남구', 1 UNION ALL SELECT 37, '동구' , 1 ) SELECT id , name , sort s1 , 0 s2 FROM parent UNION ALL SELECT p.id , c.name , p.sort s1 , c.sort s2 FROM parent p , child c WHERE p.id = c.p_id ORDER BY s1, s2 ;