我使用 ' id
' 字段 -char(22)
作为 MySQL 表的主键。此字段仅用于在向表中添加新用户时过滤唯一 ID。
对我来说,使用utf8_bin
还是utf8_general_ci
排序并不重要,因为字母的大小写无关紧要,我只使用英文字母作为 id。
唯一的问题是:哪种排序规则会提供更快的性能?
我的表最常见的查询是:
LOAD DATA INFILE ... IGNORE INTO TABLE mytable(id)
or
INSERT IGNORE INTO mytable(id)...
and
SELECT COUNT(id) FROM mytable
现在,由于表不大,我看不出性能上有什么差异,但是当我的表中的行数超过 200 万时会发生什么?
utf8_general_ci 排序规则会为 INSERT 或 LOAD IGNORE 和 SELECT COUNT 查询提供更快的性能吗?