기초 SQL입문
ORDER BY 정렬
조회 결과를 특정 컬럼 기준으로 정렬하는 절
정의
결과를 지정한 컬럼 기준으로 정렬해서 보여준다. "ORDER BY 나이 DESC"라고 쓰면 나이 많은 순(내림차순)으로 정렬된다. ASC는 오름차순(기본값), DESC는 내림차순. 여러 컬럼을 콤마로 이어 쓰면 1순위→2순위 순서로 정렬한다.
왜 중요한가?
ORDER BY가 없으면 결과의 순서가 보장되지 않는다. 같은 쿼리를 두 번 실행해도 매번 순서가 다르게 나올 수 있다. 사용자에게 보여주는 결과는 항상 의도한 순서로 나오도록 ORDER BY를 명시해야 한다.
틀리기 쉬운 포인트
예시
SELECT name, salary FROM employees ORDER BY salary DESC, name ASC;
성능 포인트
!인덱스의 정렬 순서와 일치하면 SORT 작업이 생략된다. PGA가 부족하면 Disk Sort로 떨어져 성능이 급락.