JongTachi의 개발 블로그

[Oracle] Oracle wm_concat -> listagg로 변경 본문

DB/Oracle

[Oracle] Oracle wm_concat -> listagg로 변경

JongTachi 2023. 12. 9. 12:48
728x90
반응형

오라클 데이터베이스를 11g 버전을 사용하다 업그레이드를 했는데 갑자기 쿼리문 에러가 나더라구요.

오류를 찾아보니 wm_concat 함수 부분에서 에러가 났습니다. 

버전이 업그레이드 되면서 wm_concat을 사용할 수 없게된 것입니다.

 

해결 방법은 아주 간단합니다.

 

wm_concat(컬럼명) -> listagg(컬럼명, ',') within group (order by 컬럼명)

-- ex) 예시
-- wm_comcat() 
select dept_id, wm_concat(user_name) from employee group by Dept_id;

-- listagg()
select dept_id, listagg(user_name, ',') within group (order by user_name) from employee group by Dept_id;

 

이렇게 바꿔주면 작동이 잘 된답니다. 

 

728x90
반응형