方法一:
TO_NUMBER():
cast( '123 ' as UNSIGNED INTEGER)
cast('11' as DECIMAL(10,2))
例如:
SELECT * FROM 表名 ORDER BY cast(字段名as SIGNED INTEGER) ;
方法二:
在数据里面定义的是varchar类型,实际存放的是Int类型的数据,将字段*1或者+0可以将MySQL字符串字段按数值排序 :
select * from 表名 where 1 order by 字段名*1 desc;
select * from 表名where 1 order by 字段名+0 desc;
ps:数字转字符串:
TO_CHAR():
CAST(123 AS CHAR(3))
浙公网安备 33010602011771号