SELECT REGEXP_REPLACE(‘DF,DF,DFF,CD_ENG_NM,USE_YN,DF,AAA’,’(.*),’,’GROUPING(\1)’)
from dual;
쉼표 사이 단어들이 GROUPING(단어) 라고 바뀔거라는 기대를 했는데요.
현실은.
GROUPING(DF,DF,DFF,CD_ENG_NM,USE_YN,DF)AAA 가 찍힙니다.
AAA야 뭐 마지막 처리 안했으니 그런데 , 앞부분이 엄한데서 짤리는겁니다?
그래서 치환문장을 GROUPING(\1) \2 \3 로 바꿔보니
결과가 GROUPING(DF,DF,DFF,CD_ENG_NM) USE_YN DF AAA
라고 나오네요;;;
난 누군가 또 여긴 어딘가 ㅠㅜ
버전 : 오라클 11.2.0.4 입니다.
GROUPING_ID 로 조회하는 값도 2진배열 1,2,4,8 이 아닌
엉뚱한 값부터 시작하던데 ...
미묘하네요
GROUPING_ID 의 결과같이 왜? 1,2,4,8 이 나와야 한다고 생각하신 건지?
롤업이나 큐브, GROUPING_ID 를 어떻게 사용했는지에 따라 결과는 천차만별로 달라질 것입니다.
어떤 규칙에 의해서 값이 나오는지를 이해하셔야 합니다.
http://gurubee.net/lecture/2679