問題描述
在開發過程中,我們經常會遇到需要對數據排序的操作,但數據在庫中的存儲類型不一定是支持排序的,比如VARCHAR就不支持,那麼如果和VARCHAR類型的數值進行排序呢。
解決方案
cast(value as decimal),使用cast函數將VARCHAR類型的value字段轉爲decimal類型就可以排序了。
其中CAST函數可轉換的類型是有限制的,只能轉成如下類型:
- 二進制,同帶binary前綴的效果 : BINARY
- 字符型,可帶參數 : CHAR()
- 日期 : DATE
- 時間: TIME
- 日期時間型 : DATETIME
- 浮點數 : DECIMAL
- 整數 : SIGNED
- 無符號整數 : UNSIGNED