개발/BACK
[Mysql] 특정 컬럼으로 정렬 후, 조회 데이터 ROW에 인덱스 추가하기
Hdev&Shoes
2022. 8. 19. 12:30
728x90
특정 컬럼을 기준으로 정렬한 다음,
조회된 순서대로 ROW 마다 번호를 붙여줄 수 있다
id | date | name |
1 | 2022-07-14 14:23:38 | 사과 |
2 | 2022-07-20 14:23:38 | 포도 |
3 | 2022-07-25 14:23:38 | 오렌지 |
4 | 2022-07-10 14:23:38 | 멜론 |
예를 들어 해당 데이터가 있다고 예를들면,
1.
id 별로 정렬한 후, 정렬된 순서대로 인덱스를 붙여주기
SELECT id,name,ROW_NUMBER() OVER(ORDER BY date DESC) AS "idx" FROM tb_fruit;
SELECT id,name,ROW_NUMBER() OVER(ORDER BY date ASC) AS "idx" FROM tb_fruit;
1.1
ROW_NUMBER() 함수를 이용해서 조회되는 ROW에 시퀀스를 붙여준다
1.2
OVER 집계함수를 이용하여 date 컬럼을 기준으로 정렬 후, 인덱스 번호를 부여하게 된다
728x90