ORDER BY 다음에 적힌 숫자는 SELECT 절에 명시한 칼럼의 순번을 의미합니다. 코드 5-28의 SELECT 절에 code, name, continent, region, population 총 5개의 칼럼이 있으므로 숫자 5는 5번째 칼럼인 population을 가리키겠죠. 따라서 ORDER BY 5 ASC는 ORDER BY population ASC와 같고, 쿼리 수행 결과도 같습니다.
코드 5-29
SELECT *
FROM country
ORDER BY 4, 3, 2;
실행결과
코드 5-29는 ORDER BY 다음에 4, 3, 2를, SELECT 절에는 *를 명시합니다. 여기서 4, 3, 2는 각각 어떤 칼럼을 의미할까요? SELECT 절에 *를 명시했으니 전체 칼럼이 조회되고, 숫자는 테이블을 생성할 때 작성한 칼럼의 순서입니다. 따라서 4, 3, 2는 각각 country 테이블의 4번째, 3번째, 2번째 칼럼인 region, continent, name을 의미합니다. 결국 ORDER BY 4, 3, 2는 ORDER BY region, continent, name과 같습니다.