mysql數值字符串類型的按照數值進行排序


今天遇到一個問題,就是對mysql數值字符串類型進行排序,在默認情況下使用order by 字段名稱 desc/asc 進行排序的時候,mysql進行的排序規則是按照ASCII碼進行排序的,並不會自動的識別出這些數據是數值,百度了一下,發現對於這種情況,可以采用 

     order by 字段名稱+0 desc/asc的形式進行排序(親測有效)

     order by 字段名稱*1 desc/asc的形式進行排序( 沒有進行測試 )

  ----這樣mysql會將數值字符串類型的數據當作數值進行處理,但是存在效率問題,不推薦使用varchar/char類型來存儲數值,這樣會帶來不不必要的問題


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM