ORDER BY 절은 결과가 출력되는 순서를 조절하는 기능을 합니다.
ORDER BY절을 사용하기 전, SQL 구문 순서를 기억해야 해요. 왜냐하면 SQL 구문 순서가 맞지 않을 경우 에러가 발생하기 때문이에요.
SQL 구문순서
SELECT 열_이름
FROM 테이블_이름
WHERE 조건식
GROUP BY 열_이름
HAVING 조건식
ORDER BY 열_이름
LIMIT 숫자
1. 오름차순 정렬 (기본값 ASC)
오름차순으로 정렬하기
SELECT * FROM 테이블_이름 ORDER BY 열_이름;
SELECT * FROM 테이블_이름 ORDER BY 열이름 ASC;
ORDER BY의 기본값은 ASC(오름차순)으로 되어 있기 때문에 위 두 결괏값은 동일합니다.
2. 내림차순 정렬 (DESC)
내림차순 정렬
SELECT * FROM 테이블_이름 ORDER BY 열_이름 DESC;
내림차순 정렬을 할 때는 DESC를 열_이름 뒤에 꼭 작성해주셔야 합니다.
3. 열이 여러 개
정렬할 열이 여러 개
SELECT * FROM 테이블_이름 ORDER BY 열_이름1, 열_이름2;
만약, 열_이름1에서 중복되는 데이터 값이 있다면 정렬 순서 기준은 열_이름2를 통해서 정해지게 됩니다.
4. 조건식이 있는 경우
조건식이 있는 경우
1. 잘못된 예시
SELECT * FROM 테이블_이름 ORDER BY 열_이름 WHERE 조건식;
2. 올바른 예시
SELECT * FROM 테이블_이름 WHERE 조건식 ORDER BY 열_이름;
처음에 SQL 구문 순서를 강조해서 말씀드렸죠?
WHERE절과 ORDER BY절 순서가 바뀐다면, SQL 구문 순서에 어긋나기 때문에 에러가 발생하게 됩니다.