怎么解决mysql中,当有中文和英文的字符串需要比较相等时,不能区分大小写!

时间:2021-06-14 00:58:26
当mysql中使用排序规则时,如果要对中英混合的内容区分大小写排序就没办法做了啊。
我的mysql是最新版本,里面所有区分大小写的字符集中,没有支持中文的。举例:

select uname from AAA where uname='中文ABC'

那么:中文ABC、中文Abc、中文ABc、中文abc、中文abC全都会出来。

而要支持中文,必须使用gbk、gb2312、utf-8三个字符集中的一种,而这三个字符集都没有区分大小写的排序规则。如果使用了这三个字符集,那么进行区分大小写的查询如:

select uname from AAA where uname='中文ABC' collate latin1_general_cs

这时,会报告排序规则latin1_general_cs对gbk、gb2312、utf-8字符集无效。

该怎么解决啊?

2 个解决方案

#1


collate gbk_bin试试行不行

#2


哦!我知道了,_bin的排序规则是_binary的缩写!oh core!
谢谢先!

#1


collate gbk_bin试试行不行

#2


哦!我知道了,_bin的排序规则是_binary的缩写!oh core!
谢谢先!