본문 바로가기

Backend/DB 실무

[SQL] ROW_NUMBER()/RANK() OVER()

반응형
SELCT ROW_NUMBER() OVER(PARTITION BY grouping_column ORDER BY ordering_column) FROM table_name

PARTITION BY는 그룹핑할 기준 컬럼 지정

ORDER BY는 정렬할 기준 컬럼 지정

ROW_NUMBER는 행마다 순위를 작성한다.

 

RANK() vs ROW_NUMBER() : 공동 순위 일때의 처리가 다르다

  순위 적용 방식 예시
RANK() 1위, 1위, 3위 (실제로는 : 공동 1위)
ROW_NUMBER() 1위, 2위, 3위 (실제로는 : 공동 1위)
반응형