안녕하세요;
CUBE 후에 정렬이 마음대로 안되서 질문 드려요;
CUBE로 합계 및 데이터의 갯수들을 COUNT 후에 '전국'을 제외한
데이터로 STB_TOT의 내림차순으로 ORDER BY를 주고 싶은데;
전국도 물론 함께 정렬 되네요;
UNION ALL을 쓰려고 하는데
혹시 다른 좋은 방법 있는지 여쭤봅니다.
SELECT CODE
, (CASE WHEN CODE IS NULL THEN '전국' ELSE MAX(NAME) END) AS NAME
-- '||COLUMN_LIST_LAB||'
, COUNT(AREA_CODE) AS AREA_TOT
, COUNT(STB_CODE) AS STB_TOT
FROM (
SELECT AREA.AREA_CODE AS CODE
, AREA.NAME
, STB.AREA_CODE
--'||COLUMN_LIST||'
, STB.STB_CODE
FROM (SELECT AREA_CODE , NAME
FROM TBL_AREA
WHERE PARENT_CODE = 0
) AREA
,
(
SELECT ACC_GRP.ACC_GRP_NO
, STB.AREA_CODE
, STB.ACC_NO
, STB.PARENT_ACC_NO
, STB.STB_CODE
FROM ( SELECT ACC_NO AS ACC_GRP_NO
FROM TBL_ACCOUNT
WHERE TYPE = '03') ACC_GRP
, (SELECT A.ACC_NO
, A.PARENT_ACC_NO
, A.AREA_CODE
, B.STB_CODE
FROM TBL_ACCOUNT A
, TBL_STB B
WHERE A.ACC_NO = B.ACC_NO(+)) STB
WHERE ACC_GRP.ACC_GRP_NO = STB.PARENT_ACC_NO(+)
) STB
WHERE AREA.AREA_CODE = STB.AREA_CODE(+)
) A
GROUP BY CUBE(CODE)
ORDER BY COUNT(STB_CODE) DESC