서론
SELECT 명령에 ORDER BY
구를 지정하면 검색 결과의 행 순서
를 바꿀 수 있다.
ORDER BY 구를 지정하지 않을 경우
에는 데이터베이스 내부에 저장된 순서대로 반환된다.
1. ORDER BY로 검색 결과 정렬하기
SELECT 명령의 ORDER BY 구로 정렬하고 싶은 열
을 지정한다.
지정된 열의 값에 따라 행의 순서가 변경된다.
이때 ORDER BY 구는 WHERE 구
뒤에 지정한다.
SELECT * FROM sample_table WHERE id<>1 ORDER BY id;
검색 조건이 필요없는 경우에는 WHERE 구를 생략하는데 이때 ORDER BY 구는 FROM 구
의 뒤에 지정한다.
SELECT * FROM sample_table ORDER BY id;
2. ORDER BY DESC로 내림차순으로 정렬하기
ORDER BY 구는 기본적으로 오름차순
으로 정렬된다.
내림차순
으로 정렬하려면 열명 뒤에 DESC
를 붙이면 된다.
SELECT * FROM sample_table ORDER BY id DESC;
오름차순도 명시적으로 ASC
를 붙일 수 있으나 default
이기 때문에 굳이 붙여줄 필요는 없다.
SELECT * FROM sample_table ORDER BY id (ASC);
DESC는 descendant(하강)
, ASC는 ascendant(상승)
의 약자이다.
DESC는 내려가는 이미지로, ASC는 올라가는 이미지로 기억해 두면 외우기 쉬울 것이다.
3. 대소관계
ORDER BY로 정렬할 때는 값의 대소관계
가 중요하다.
수치형
데이터라면 대소관계는 숫자의 크기로 판별하므로 이해하기 쉽다
1 < 10
날짜시간형
데이터도 수치형 데이터와 마찬기지로 숫자 크기로 판별한다.
'1998-10-16' < '2022-01-01'
문자열
형은 '사전식 순서'
에 의해 결정된다.
'a' > 'b'
'가' > '나'
'1' > '2'
'10' > '2' //주의!!!