결과에 순번, 순위를 매기는 함수
PARTITION BY : 동일 그룹으로 묶어줄 칼럼 명 지정
ORDER BY : Partition 정의에 지정된 컬럼에 대한 정렬 수행
SELECT
<순위함수이름> (arguments)
OVER ([PARTITION BY <partion_by_list>]
ORDER BY <order_by_list>)
FROM 테이블명;
RANK() : 순위 값 중 동등 순위 번호는 같게 나오고 그 다음 순위를 다음 번호를 뺀 그 다음 값을 출력
PARTITION을 지정된 수 만큼의 등급으로 나누어 각 등급 번호를 출력
SELECT ID,
(CASE
WHEN NTILE(4) OVER (ORDER BY SIZE_OF_COLONY) = 1 THEN 'LOW'
WHEN NTILE(4) OVER (ORDER BY SIZE_OF_COLONY) = 2 THEN 'MEDIUM'
WHEN NTILE(4) OVER (ORDER BY SIZE_OF_COLONY) = 3 THEN 'HIGH'
ELSE 'CRITICAL' END) AS COLONY_NAME
FROM ECOLI_DATA
ORDER BY ID;
DENSE_RANK() : 순위 값 중 동등 순위 번호는 같게 나오고 그 다음 순위를 다음 번호로 출력
ROW_NUMBER() : 동등 순위를 인식하지 않고 매번증가되는 번호를 출력
LEAD(expr [,offset][,default]) / LAG() : 지정된 칼럼의 이전, 이후의 행 값을 출력
FIRST_VALUE() / LAST_VALUE() : 각 그룹별 첫 번째와 마지막값 하나만출력
CUME_DIST() : 주어진 그룹에 대한 상대적인 누적분포도 값을 반환한다.
분포도 값(비율)이므로 반환 값의 범위는 0 초과 1이하 사이의 값을 반환한다.