쿼리를 짜다 보면 가끔씩 행을 합쳐야 하는 경우가 생긴다.
NAME
------
LEE
PARK
CHOI
위와 같은 결과를
NAME
----
LEEPARKCHOI
라던지
LEE|PARK|CHOI
이런식으로 만들어 활용하고 싶을때가 있다.
현재 프로젝트를 진행하면서도 분류 코드 구분 때문에 이런 기능을 사용해야 했고.
인터넷으로 검색을 하면서 XMLAGG라는 기능을 찾을 수 있었다.
WITH
TABLE AS (
SELECT 이름 FROM 유저목록
)
SELECT
LTRIM(SUBSTR(XMLAGG(XMLELEMENT(이름,'|'||이름 )).EXTRACT('//text()').GetStringVal(), 2))
FROM TABLE)
TABLE AS (
SELECT 이름 FROM 유저목록
)
SELECT
LTRIM(SUBSTR(XMLAGG(XMLELEMENT(이름,'|'||이름 )).EXTRACT('//text()').GetStringVal(), 2))
FROM TABLE)
'ORACLE' 카테고리의 다른 글
| 오라클 인덱스들 테이블 스페이스 한번에 모두 변경하기 (0) | 2010/07/05 |
|---|---|
| 오라클 xmlagg를 이용핸 row 합치기 (0) | 2010/07/02 |
| 오라클 10g sysdate 형식 변경 (0) | 2009/09/30 |
| 솔라리스 호스트명 변경하기 (0) | 2009/07/11 |
