티스토리 뷰


대개 Mysql 문자형의 필드 속성안에 숫자값이 입력된 데이터에 대해

정렬을 할때

SUBSTRING_INDEX 를 사용하게 되는데..

문자와 숫자가 혼용되었을땐...유용하나 숫자만 있을 경우에는 아래

방법들을 이용해보니 잘 되더군요..ㅋㅋ

 

SUBSTRING_INDEX의 경우

+0 으로 숫자연산으로 해버리면 문자열이 있어도 강제로 숫자로 바꿔서 처리 됩니다.

(물론 숫자가 아닌 문자열의 경우 오류나겠지만...)

+0 방법이 마음에 안들면

CAST(expr AS type), CONVERT(expr,type), CONVERT(expr USING transcoding_name)
쓰면 됩니다..... 다만 Ver 4.0.2 이상에서만.....사용을 할수가 있습니다.  

 


select print_num FROM table order by CAST(print_num as signed) desc

관련메뉴얼은 아래 url로....
http://dev.mysql.com/doc/refman/4.1/en/cast-functions.html