DB 설계 시 테이블 간의 관계를 정의할 때, 흔히 부모-자식 테이블 구조에 집중하게 된다. 하지만 쿼리 성능 최적화 관점에서 보면, 정렬 컬럼이 어느 테이블에 위치하는지가 드라이빙 테이블 선택의 핵심 기준이 된다. MySQL의 세 가지 정렬 처리 방식MySQL은 ORDER BY 절을 처리할 때 다음 세 가지 방식 중 하나를 선택한다. 성능은 위에서 아래로 갈수록 저하된다.인덱스 기반 정렬: 별도의 정렬 작업 없이 인덱스 순서대로 데이터를 읽는다.드라이빙 테이블만 정렬 (Using filesort): 조인 전에 드라이빙 테이블만 먼저 정렬한다.조인 후 전체 정렬 (Using temporary; Using filesort): 조인 결과 전체를 임시 테이블에 저장한 뒤 정렬한다.만약 실행 계획을 출력했는데 ..