1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | WITH t(type, name ,code) AS ( SELECT 'A' , '사과' , '0' FROM dual UNION ALL SELECT 'A' , '레몬' , '1' FROM dual UNION ALL SELECT 'A' , '포도' , '2' FROM dual UNION ALL SELECT 'A' , '참외' , '3' FROM dual ) SELECT type , SUBSTR(XMLAgg(XMLElement(x, ',' , name ) ORDER BY code).Extract( '//text()' ), 2) name_9i , SUBSTR(XMLAgg(XMLElement(x, ',' , code) ORDER BY code).Extract( '//text()' ), 2) code_9i , wm_concat( name ) name_10g , wm_concat(code) code_10g , ListAgg( name , ',' ) WITHIN GROUP ( ORDER BY code) name_11g , ListAgg(code, ',' ) WITHIN GROUP ( ORDER BY code) code_11g FROM t GROUP BY type ; |