发新帖

MYSQL下UTF8中文字段按汉语拼音排序之方法

[复制链接]
发表于 2016-5-10 | 显示全部楼层 |阅读模式
最近因为考虑在51好友论坛(www.51haoyou.com/discuz)里增添一个中文字段以汉语拼音顺序的排序,就查看了一下已经建立多年的51好友交友(www.51haoyou.com)对中文字段的排序情况,才发现其排序结果不是按照汉语拼音排序的,可以说是杂乱无章的,如下图:

order-by-utf8.jpg

因为www.51haoyou.com中的数据库的中文内容的存储方式是utf8(gbk和gb2312的方式就没有问题),执行类似于mysql的命令select username,subject from user_articles order by username desc就会得出类似于上图的结果。经过查询和测试使用命令select username,subject from user_articles order by CONVERT( username USING GBK ) desc就会得出正确结果,如下图:

order-by-pinyin.jpg


相关帖子




您需要登录后才可以回帖 登录 | 注册

本版积分规则

51haoyou.com | GMT-4, 2025-10-2 23:30

© 2005-

快速回复 返回顶部 返回列表