반응형
mysql 특정 필드의 형식이 varchar 일때 값이 숫자로 입력된 경우 정렬을 하면 이상하게 된다.
값이 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 일때 오름차순 정렬 하면 아래와 같이 이상하게 정렬된다.
SELECT * FROM tablename ORDER BY varcharID
1, 10, 11, 12, 2, 3, 4, 5, 6, 7, 8, 9
테이블의 자료형을 변경하지 않고 정렬하는 간단한 팁으로 *1을 해주면 된다.
SELECT * FROM orderex ORDER BY varcharId*1
결과값이 정상적으로 정렬된다.
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
내램차순으로 하려면
SELECT * FROM orderex ORDER BY length(varcharId) desc,varcharId desc
반응형
'mysql' 카테고리의 다른 글
mysql 사용자 정렬 숫자를 재정렬 하려면 (0) | 2022.02.11 |
---|---|
mysql auto_increment 지정 필드 재정렬 (0) | 2022.02.11 |
웹호스팅의 DB 자동 백업하기 (0) | 2022.02.11 |
[mysql] CPU 점유율이 높을 때 확인할 내용 (0) | 2022.01.18 |
mysql 쿼리 (5일 데이터만 남기고 모두 삭제) (0) | 2022.01.18 |
댓글