在php中经常用到中文排序,对一个字段进行排序时,若非中文字段则可以直接使用order by ColumnName进行排序,但进行中文字段排序,对汉字的排序结果往往都不是想要的结果,默认的order by是根据对应字符的ASCII码排序,而且mysql使用的默认utf8编码。
如要实现按照中文拼音道字母的排序,又无需改变数据库结构,方法就在sql语句内加入CONVERT 函数即可。
select * from table order by CONVERT(列名 USING gbk);
CONVERT() 函数:提供一个在不同字符集之间转换数据的方法。语法是:
CONVERT(expr USING transcoding_name)
前提是mysql支持gbk字符集,不然会报错。
以上就是mysql order by 实现数据库中文字段按拼音首字母排序的详细内容,更多关于mysql order by 实现数据库中文字段按拼音首字母排序的资料请关注九品源码其它相关文章!