目录
1 遇到的问题
将本应该是数字的类型一致的存储为varchar,导致需要排序时
SELECT * FROM tc ORDER BY tn ASC
2 解决方案
2.1 直接用加法
字符串+0
SELECT
*
FROM
tc
ORDER BY
( tn + 0 ) ASC
2.2 使用函数
注:这里的type可以为:
浮点数 : DECIMAL
整数 : SIGNED
无符号整数 : UNSIGNED
CAST(value as type);
CONVERT(value, type);
SELECT
*
FROM
tc
ORDER BY
CAST( tn AS SIGNED ) ASC