SELECT A.ID,
CASE WHEN A.SIZE = 1 THEN 'CRITICAL'
WHEN A.SIZE = 2 THEN 'HIGH'
WHEN A.SIZE = 3 THEN 'MEDIUM'
WHEN A.SIZE = 4 THEN 'LOW'
END AS COLONY_NAME
FROM
(
SELECT ID,
NTILE(4) OVER (ORDER BY SIZE_OF_COLONY DESC) AS SIZE
FROM ECOLI_DATA
) A
ORDER BY ID
*NTILE( N ) OVER (ORDER BY 컬럼)
-> 특정한 컬럼의 값을 N개의 등급으로 오름차순 / 내림차순으로 분류가 필요한 상황에서 사용
-> 예시: 직원 테이블에서 급여 내림차순 분류
+ PARTITION BY
-> *NTILE( N ) OVER ( PARTITION BY 컬럼1 ORDER BY 컬럼2)
-> 예시: 직원 테이블에서 직급별로 급여 내림차순 분류
'NOTE > 프로그래머스' 카테고리의 다른 글
전화번호 목록 - Java (0) | 2024.03.30 |
---|---|
대장균들의 자식의 수 구하기-MySQL (0) | 2024.03.29 |
노선별 평균 역 사이 거리 조회하기-MySQL (0) | 2024.03.29 |
분기별 분화된 대장균의 개체 수 구하기 - MySQL (0) | 2024.03.29 |
자동차 평균 대여 기간 구하기 - Oracle (0) | 2023.10.04 |