본문 바로가기
Data Analysis

[MySQL] NTILE 함수

by 치리니 2022. 9. 23.

NTILE(숫자) OVER (PARTITION BY 조건 1 ORDER BY 조건 2)

 

순위, 순번을 매기는 함수로 PARTITION을 지정된 수 만큼의 등급으로 나누어 각 등급 번호를 출력한다.

PARTITION 기준 컬럼의 값이 동일하더라도 정렬 순서에 따라 해당 값이 다른 그룹에 속할 수 있으며,

전체 레코드의 숫자가 나누고자 하는 그룹의 수로 딱 떨어지지 않으면 일부 그룹의 숫자가 적음.

 

비슷한 함수 범주에는 RANK, DENSE_RANK, ROW_NUMBER 등이 있다. 

 

PARTITION BY : 동일 그룹으로 묶어줄 컬럼 명 지정

ORDER BY : PARTITION 정의에 지정된 컬럼에 대한 정렬 수행