我听说过/读过整数列上的连接比varchar列上的连接更有效的建议.有时我听说这有资格:“连接整数列比连接长varchar列更有效.”
任何人都可以评论这两种说法是否属实,如果是,那么有哪些基本原因?
任何文章或参考文献都欢迎和赞赏.谢谢!
解决方法
我不熟悉
Postgresql,但我希望在任何数据库上都是如此,原因很简单,比较整数比比较字符串更有效.
要进行连接,数据库需要在关键字段上搜索索引.搜索整数索引必须比搜索字符串索引更快.不仅涉及的数据较少,而且可以在单个CPU操作中快速执行比较,而不是使用区分大小写和本地化逻辑的一些可能复杂的字符串比较.
这是假设“更有效”,你的意思是微秒速度优势超过.当然,可能存在架构考虑因素意味着在字符串上创建连接对于数据库设计来说总体上是更好的事情.但一般来说,除了整数之外,我一直没有加入任何其他东西.