utf8\u bin与utf8\u general\u ci。在mysql表中,哪个排序规则将提供更快的性能?

utf8\u bin与utf8\u general\u ci。在mysql表中,哪个排序规则将提供更快的性能?,mysql,collation,Mysql,Collation,我使用“id”字段-char(22)作为MySQL表的主键。 此字段仅用于在向表中添加新用户时筛选唯一ID 对我来说,是否使用utf8\u bin或utf8\u general\u ci排序并不重要,因为字母大小写无关紧要,我只使用英文字母作为id 唯一的问题是: 哪个排序规则将提供更快的性能 “我的表”最常见的查询有: LOAD DATA INFILE ... IGNORE INTO TABLE mytable(id) or INSERT IGNORE INTO mytable(id)...

我使用“
id
”字段-
char(22)
作为MySQL表的主键。 此字段仅用于在向表中添加新用户时筛选唯一ID

对我来说,是否使用
utf8\u bin
utf8\u general\u ci
排序并不重要,因为字母大小写无关紧要,我只使用英文字母作为id

唯一的问题是: 哪个排序规则将提供更快的性能

“我的表”最常见的查询有:

LOAD DATA INFILE ... IGNORE INTO TABLE mytable(id)
or
INSERT IGNORE INTO mytable(id)...
and 
SELECT COUNT(id) FROM mytable
现在,由于表不大,我看不到性能上的任何差异,但是当我的表中的行数超过200万时会发生什么呢


utf8\u general\u ci排序规则能否为插入或加载忽略和选择计数查询提供更快的性能

一般来说,
utf8\u bin
的速度至少与
utf8\u general\u ci
的速度一样快,因为除了识别多字节字符之外,它还依赖于二进制数据

这就是说,
id
列上存在一个索引,并且您只希望检测重复项而不进行排序,这意味着绝对不会有可检测的差异。然而,这只是一个有根据的猜测,所以我可能是错的(即使在我看来不太可能)