Web Frontend/Database

[SQL] 오름차순(ASC)과 내림차순(DESC) 정렬 순서

챙v 2025. 3. 5. 16:47
728x90
반응형

가끔 헷갈릴 때 보기 위한 정리 포스팅입니다.

 표로 한 눈에 보기

데이터 유형 오름차순 (ASC) 내림차순 (DESC)

숫자(Number) 작은 값 → 큰 값 큰 값 → 작은 값
문자(String) A → Z (가나다순) Z → A (역순)
날짜(Date) 과거 → 미래 미래 → 과거

 

1️⃣ 숫자(Number) 데이터 정렬 순서

정렬 방식 정렬 순서

오름차순 (ASC) 가장 작은 숫자 → 가장 큰 숫자
내림차순 (DESC) 가장 큰 숫자 → 가장 작은 숫자

 

예제 데이터

SELECT * FROM 제품 ORDER BY 가격 ASC;

 

🔹 오름차순 결과

가격
----
100
200
300
400
SELECT * FROM 제품 ORDER BY 가격 DESC;

 

🔹 내림차순 결과

가격
----
400
300
200
100

2️⃣ 문자(String) 데이터 정렬 순서

정렬 방식 정렬 순서

오름차순 (ASC) A → Z (가나다순)
내림차순 (DESC) Z → A (역순)

 

예제 데이터

SELECT * FROM 고객 ORDER BY 이름 ASC;

 

🔹 오름차순 결과

이름
----
Anna
David
Kim
Zoe
SELECT * FROM 고객 ORDER BY 이름 DESC;

 

🔹 내림차순 결과

이름
----
Zoe
Kim
David
Anna

📌 주의!
숫자가 포함된 문자열 정렬

  • 'A2', 'A10', 'A1' 같은 데이터가 있으면, 일반적으로 사전식 정렬이 적용되어 A1 → A10 → A2 순서로 정렬될 수 있음.

이를 방지하려면 LPAD() 같은 함수로 숫자를 맞춰야 함.


3️⃣ 날짜(Date) 데이터 정렬 순서

정렬 방식 정렬 순서

오름차순 (ASC) 과거 날짜 → 미래 날짜
내림차순 (DESC) 미래 날짜 → 과거 날짜

 

예제 데이터

SELECT * FROM 주문 ORDER BY 주문일자 ASC;

 

🔹 오름차순 결과

주문일자
---------
2023-01-01
2023-02-15
2023-03-10
2023-04-20
SELECT * FROM 주문 ORDER BY 주문일자 DESC;

 

🔹 내림차순 결과

주문일자
---------
2023-04-20
2023-03-10
2023-02-15
2023-01-01

 

 

ORDER BY 게시물 보기

728x90
반응형