본문 바로가기

Database/MySQL

ORDER BY - 한글 영문 숫자 / 영문 한글 숫자 순서로 정렬

- 영어 대문자 A ~ Z : 65 ~ 90
- 영어 소문자 a ~ z : 97 ~ 122
- 숫자 0 ~ 9: 48 ~ 57

 

한글 - 영문 - 숫자 순서로 정렬

SELECT * FROM book
ORDER BY (CASE WHEN ASCII(SUBSTRING(bookName, 1)) BETWEEN 48  AND 57 THEN 3
               WHEN ASCII(SUBSTRING(bookName, 1)) < 122 THEN 2 ELSE 1 END), bookName;


영문 - 한글 - 숫자 순서로 정렬

SELECT * FROM book
ORDER BY (CASE WHEN ASCII(SUBSTRING(bookName, 1)) BETWEEN 48  AND 57 THEN 3
	       WHEN ASCII(SUBSTRING(bookName, 1)) < 122 THEN 1 ELSE 2 END), bookName;

'Database > MySQL' 카테고리의 다른 글

[연습문제] 서브 쿼리  (0) 2021.11.27
[연습문제] JOIN  (0) 2021.11.27
[연습문제] DML  (0) 2021.11.27
csv 파일 import 시 주의사항  (0) 2021.11.27
[연습문제] DDL_ALTER  (0) 2021.11.27