Mysql order by 排序 varchar 類型數據
varchar 類型字段排序, 會將數字當成字符串來處理. 排序規則一般是從左到右一位位來比較.
+0之后 就轉化成INT 類型排序
數據庫表中 某個字段類型為varchar
想用sql實現排序 超找出這個字段topN的值。
想到 用order by desc
例如sql:
SELECT * FROM testTable where fcode=40006 and fmotype='bu100101' order by fvalue desc limit 0,10
出現
12
14
1566
16
2425
25
27
這樣的情況
數據庫應該是按照每位進行比較 得到的結果。可以修改成
SELECT * FROM testTable where fcode=40006 and fmotype='bu100101' order by fvalue+0 desc;