今天遇到一個問題,就是對mysql數值字符串類型進行排序,在默認情況下使用order by 字段名稱 desc/asc 進行排序的時候,mysql進行的排序規則是按照ASCII碼進行排序的,並不會自動的識別出這些數據是數值,百度了一下,發現對於這種情況,可以采用
order by 字段名稱+0 desc/asc的形式進行排序(親測有效) order by 字段名稱*1 desc/asc的形式進行排序( 沒有進行測試 )
----這樣mysql會將數值字符串類型的數據當作數值進行處理,但是存在效率問題,不推薦使用varchar/char類型來存儲數值,這樣會帶來不不必要的問題