MySQL中对varchar类型的排序
MySQL中对varchar类型的排序一、varchar类型的字段保存的值是数值类型
1、使用MySQL函数CAST
例如:
select server_id from cardserver where game_id = 1 order by CAST(server_id as SIGNED) desc limit 10;
2、使用MySQL函数CONVERT
例如:
select server_id from cardserver where game_id = 1 order by CONVERT(server_id,SIGNED) desc limit 10;
3、使用 字段名+0 的方式
例如:
select server_id from cardserver where game_id = 1 order by server_id+0 desc limit 10;
二、varchar类型的字段保存的值是英文字母或中文等
要想按汉字的拼音来排序,需要把数据库的字符集设置为UTF8,然后在order by 时候强制把该字段信息转换成GBK,这样出来的结果就是按拼音顺序排序的。
例如:
SELECT * FROM table_name ORDER BY CONVERT(column_name USING gbk);