【MYSQL】排序中的字段类型转换

来源:互联网 发布:红米为啥不能清除数据 编辑:程序博客网 时间:2024/05/28 05:18

 http://john-kong19.iteye.com/blog/1149478

字段server_id是varchar类型,查询时以server_id排序,排序结果有问题?

select server_id from cardserver where game_id = 1 order by server_id desc limit 10;

原因是:数据库根据字符串排序,10也排在9之后了。

解决办法:把字符串类型转换为数值类型;

方法一:server_id+0后再排序

方法二:使用MySQL函数CAST/CONVERT
CAST(server_id as SIGNED)
或者

CONVERT(server_id,SIGNED)

原创粉丝点击