Database

[mysql] SQL order string as number

컨텐츠 정보

본문

I have numbers saved as VARCHAR to a MySQL database. I can not make them INT due to some other depending circumstances.

It is taking them as character not as number while sorting.

In database I have

1 2 3 4 5 6 7 8 9 10...

On my page it shows ordered list like this:

1 10 2 3 4 5 6 7 8 9

How can I make it appear ordered by numbers ascending?



---------------------------------------------------------------------------------


select col from yourtable
order by cast(col as unsigned)

or to force a conversion to number do:

select col from yourtable
order by col * 1

관련자료

댓글 0
등록된 댓글이 없습니다.
Today's proverb
희망이란 본래 있다고도 할 수 없고 없다고도 할 수 없다. 그것은 마치 땅 위의 길과 같은 것이다. 본래 땅 위에는 길이 없었다. 걸어가는 사람이 많아지면 그것이 곧 길이 되는 것이다. (노신의 “고향“중에서)