728x90
wm_concat 함수는 row 데이터를 col 으로 자동 나열 해주는 정말 편리한 기능이다.
예전에는 connect by 쓰고 했는데 편하다
그런데 11g에서 그러는 것인지 모르겠지만 사무실 개발 환경에서 문제가 없던 것이 클라이언트에서는
clob 데이터로 넘어온다는 것이다. to_char 로 감싸던가 아니면 mybatis 상에서 resultmap 매핑설정을 통해
string 형태로 변경 해야 된다.
=====추가====
구글링 하다가 봤는데 10g에서 wm_concat
11g에서는 ListAgg
9i 에서는 XmlAgg 를 사용하면 된단다...
SELECT pid
, SUBSTR(XMLAgg(XMLElement(x, '|', city)).Extract('//text()'), 2) v_9i
, wm_concat(city) v_10g
, ListAgg(city, '|') WITHIN GROUP(ORDER BY rownum) v_11g
FROM t_table
GROUP BY pid
;
위에 예제 쿼리는 구루비의 마농님 쿼리를 가져왓다....
728x90
'sql' 카테고리의 다른 글
trigger 이용 (0) | 2015.11.26 |
---|---|
스케줄을 보여주는 데이터에 대한 조건절 구조 (0) | 2014.11.27 |
오라클 누계 합수 (0) | 2014.05.13 |
오라클 ORA-01779 에러 발생시 merge 문 이용한 update (0) | 2014.05.08 |
오라클 숫자 혹은 문자 고정된 자리수 채우기 (0) | 2014.03.26 |