정렬 우선순위
인덱스 키는 왼쪽부터 한 단계씩 적용됩니다
복합 인덱스
(user_id, order_date)
는 두 컬럼을 따로 보는 것이 아니라, 하나의 키를 앞에서부터 비교하며 배치합니다.
1차 기준
user_id가 먼저 묶습니다
같은 사용자 엔트리가 인접하게 모여서 먼저 큰 정렬 덩어리가 만들어집니다.
2차 기준
같은 user_id 안에서 order_date를 비교합니다
선행 컬럼 값이 같을 때만 다음 컬럼이 정렬 순서를 결정합니다.
정렬된 엔트리
user_id
order_date
ROWID
같은 user_id = 1
1
2024-01-01
101
1
2024-02-15
102
1
2024-03-20
103
다음 user_id = 2
2
2024-01-05
201
2
2024-02-10
202
다음 user_id = 3
3
2024-01-15
301
읽는 순서도 같습니다: 먼저
user_id 범위
를 찾고, 그 안에서
order_date 순서
를 그대로 따라갑니다.
그래서 컬럼 순서를 바꾸면 묶이는 기준도 바뀌고, 인덱스로 빠르게 찾을 수 있는 질의 형태도 달라집니다.