listagg 못 쓸때 0 4 1,682

by 미생 [2017.09.21 09:57:47]


1 사과

1 밤

2 배

2 참외

2 복숭아

이런걸 

1 사과 , 밤 

2 배 , 참외, 복숭아

로 바꿀때 listagg 쓰면 금방인데 함수 지원이 안되서 못쓰고있습니다 다른 방법 혹시 없을까요?

 

 

by 김용한 [2017.09.21 10:02:20]

wm_concat 써보세요


by 박군two [2017.09.21 10:05:30]

WITH T AS (
    SELECT 1 NO, '사과' NM FROM DUAL UNION ALL
    SELECT 1   , '밤'      FROM DUAL UNION ALL
    SELECT 2   , '배'      FROM DUAL UNION ALL
    SELECT 2   , '참외'    FROM DUAL UNION ALL
    SELECT 2   , '복숭아'  FROM DUAL
)
SELECT T.NO,
       SUBSTR(XMLAGG(XMLELEMENT(A, ',', T.NM)).EXTRACT('//text()'), 2) NM_9i,
       TO_CHAR(WM_CONCAT(T.NM)) NM_10g,
       LISTAGG(T.NM, ',') WITHIN GROUP (ORDER BY T.NM) NM_11g
FROM   T
GROUP BY T.NO

 


by 마농 [2017.09.21 11:26:54]

by 미생 [2017.09.22 09:59:08]

감사합니다

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입