쿼리문 질문 드립니다. 0 4 1,260

by 손님 [PL/SQL] 쿼리 [2012.03.08 10:44:04]


TABLE1
COLUMN1
01
03
05
08
위와 같이 있을경우 아래와 같이 쿼리 결과물을 얻고 싶습니다.
펑션이나, 쿼리로 가능한가요?
SELECT '01,03,05,08' FROM DUAL
by 박상준 [2012.03.08 11:24:25]
 
WITH TABLE1 AS
(
SELECT '01' AS COLUMN1 FROM dual
UNION ALL 
SELECT '03' AS COLUMN1 FROM dual
UNION ALL 
SELECT '05' AS COLUMN1 FROM dual
UNION ALL 
SELECT '08' AS COLUMN1 FROM dual
)

SELECT WM_CONCAT(COLUMN1) FROM TABLE1;



by 손님 [2012.03.08 13:00:03]
박상준님 전, 오라클 9i  입니다 ㅠㅠ

by 박상준 [2012.03.08 13:14:22]
그러면 XMLAGG 방식으로 하시면 될거에용

  WITH TABLE1 AS
  (
   SELECT '01' AS COLUMN1 FROM dual
   UNION ALL 
   SELECT '03' AS COLUMN1 FROM dual
   UNION ALL 
   SELECT '05' AS COLUMN1 FROM dual
   UNION ALL 
   SELECT '08' AS COLUMN1 FROM dual
  )
   
  SELECT SUBSTR(REPLACE(XMLAGG(XMLELEMENT("nm", ', ' || COLUMN1)).EXTRACT('//text()').GetStringVal(), ', , ', NULL), 3)
   FROM TABLE1;

by 손님 [2012.03.08 14:25:03]
감사합니다.
복 받으실거에요 ^^
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입