
LISTAGG 함수란?
리스트 형태의 데이터를 grouping 할 때 사용된다.
오라클 11g R2 버전부터 WM_CONCAT 함수 대신 LISTAGG 함수를 사용할 수 있다.
LISTAGG( ) 함수는 그룹 함수이기 때문에 GROUP BY 또는 PARTITION BY 절과 함께 사용해야 한다.
WM_CONCAT 함수는 DISTINCT를 사용할 수 있으나, LISTAGG 함수는 사용할 수 없다. 그러나 정규식 함수를 사용하여 중복을 제거할 수 있으며 ORDER BY 절을 사용할 수 있어서 값의 정렬이 가능하다.
사용법:
SELECT
EMPNO,
LISTAGG(EMPNM , ' , ') WITHIN GROUP(ORDER BY EMPNM DESC) AS EMPNMS
FROM EMP
GROUP BY DEPTNO;
EMPNM 컬럼을 ,로 구분하여 한 컬럼에 합칠 수 있다.
프로젝트 적용 예시는 곧....