INT和VARCHAR主键之间是否存在真正的性能差异?使用INT与VARCHAR作为MySQL中的主键之间是否存在可衡量的性能差异?我想使用VARCHAR作为参考列表的主键(想想美国,国家代码),并且同事不会将INT AUTO_INCREMENT作为所有表的主键。我的论点,详见这里,是INT和VARCHAR之间的性能差异可以忽略不计,因为每个INT外键引用将需要一个JOIN,使参考的意义上说,VARCHAR键则直接呈现的信息。那么,有没有人有这个特定用例的经验以及与之相关的性能问题?
3 回答
胡说叔叔
TA贡献1804条经验 获得超8个赞
这与表现无关。这是关于什么是一个好主键。随着时间的推移,独特而不变。您可能认为诸如国家/地区代码之类的实体从未随时间而变化,并且是主键的良好候选者。但痛苦的经历是很少见到的。
INT AUTO_INCREMENT满足“独特且不变的时间”条件。因此偏好。
添加回答
举报
0/150
提交
取消