一种支持mysql支持中文排序的方法
编译MySQL ISO-8859字符集作为默认的字符集,因此在比较中文编码字符的情况转换过程,造成这种现象的原因,一个解决方法是添加中文字段包含二进制属性,所以作为一个二进制比较,
例如,将名称char(10)改为名称char(10)二进制。
————= GBK字符集参数时使用编译MySQL,MySQL将直接支持中文查找和排序。
按中文排序的mysql排序
在MySQL中,我们经常在字段上排序查询,但是在用中文排序和搜索时,排序和查找汉字总是错误的。
如果这个问题不解决,那么MySQL将无法真正处理中国。问题是因为查询字符串中的MySQL是不区分大小写,在MySQL编译设置为默认字符集字符的比较ISO-8859,所以汉字编码字符大小写转换过程所造成的这种现象。
uff1a解
对于包含中文的字段,添加二进制属性使之成为二进制比较,例如,而不是名称char(10)到名称char(10)二进制。
如果你编译源代码的MySQL,你可以使用,字符集= GBK参数在编译MySQL,所以MySQL将直接支持中文查找和排序(默认是latin1)。你也可以使用额外的字符集= GB2312,GBK添加多个字符集。
如果你不想修改表结构或重新编译MySQL,您还可以在订单转换功能使用的查询语句的一部分。例如,SELECT * FROM mytable顺序转换(chinesecolumnname使用GBK);
UTF8默认排序规则设置utf8_general_ci,这不是基于中文。你需要强迫MySQL排序在中国。
选择转换core_vender_info秩序*(vender_abbrev使用GBK)整理gbk_chinese_ci