我有一个number类型字段varchar。即使它是type varchar,它也存储带有可选前导零的整数值。排序按字典顺序排序("42"在之前"9")。如何订购的数值("9"来之前"42")?当前,我使用查询:SELECT * FROM table ORDER BY number ASC
3 回答
慕姐8265434
TA贡献1813条经验 获得超2个赞
对于具有Er353,ER 280,ER 30,ER36之类的值的表,默认排序将给出ER280 ER30 ER353 ER36
SELECT fieldname, SUBSTRING(fieldname, 1, 2) AS bcd,
CONVERT(SUBSTRING(fieldname, 3, 9), UNSIGNED INTEGER) AS num
FROM table_name
ORDER BY bcd, num;
结果将按此顺序ER30 ER36 ER280 ER353
添加回答
举报
0/150
提交
取消