(
select ALL_RANK, law_stblty_inftr , CNT FROM
(
SELECT rank() over (order by CNT desc) as ALL_RANK,LAW_STBLTY_INFTR, CNT FROM
(
SELECT LAW_STBLTY_INFTR, COUNT(LAW_STBLTY_INFTR) AS CNT
FROM TB_PRVSN_EVL_RESULT
WHERE 1=1
AND TO_CHAR(FRST_REG_DT, 'YYYY-MM') = TO_CHAR(SYS_DATETIME, 'YYYY-MM')
AND LAW_STBLTY_INFTR IS NOT NULL
GROUP BY LAW_STBLTY_INFTR
)
)
where ALL_RANK <= 3
)
union all
(
select ALL_RANK, 'ETC' as ETC, SUM(CNT) FROM
(
select ALL_RANK, law_stblty_inftr , CNT FROM
(
SELECT rank() over (order by CNT desc) as ALL_RANK,LAW_STBLTY_INFTR, CNT FROM
(
SELECT LAW_STBLTY_INFTR, COUNT(LAW_STBLTY_INFTR) AS CNT
FROM TB_PRVSN_EVL_RESULT
WHERE 1=1
AND TO_CHAR(FRST_REG_DT, 'YYYY-MM') = TO_CHAR(SYS_DATETIME, 'YYYY-MM')
AND LAW_STBLTY_INFTR IS NOT NULL
GROUP BY LAW_STBLTY_INFTR
)
)
where ALL_RANK > 3
)
group by ETC
)
이렇게하면 COUNT 갯수가제일많은 상위3개 나오고 나머지는 기타로한번에 더해져서 값이추출됨
'DBMS > DataBase' 카테고리의 다른 글
[DB] 데이터베이스 정규화의 필요성 (0) | 2023.01.20 |
---|---|
[데이터베이스] ERD 개념 및 작성방법 (0) | 2022.05.11 |
[SQL] 파일경로, 파일명, 확장자 구분해서 조회하기 (0) | 2021.12.10 |
[MS-SQL] 테이블 데이터, 길이 등 보기편하게 조회 하는 법 (0) | 2021.01.27 |
[MySQL] AUTO_INCREMENT 초기화 방법 (0) | 2020.10.22 |