首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >join时索引对不同列的影响

join时索引对不同列的影响
EN

Stack Overflow用户
提问于 2019-05-28 20:28:21
回答 1查看 20关注 0票数 0

假设我们有两个表-表A和表B,这两个表都有500万条记录。它们有共同的字段,id和name。我想检查一下,如果我们在连接表时应用于连接字段,那么索引会有什么影响,以及当连接表时,索引对select列有什么影响。下面是查询

代码语言:javascript
复制
select t1.name from table A t1 inner join table B t2 on t1.id=t2.id;

为了获得更快的结果,我应该在哪个字段上创建索引。我应该把索引放在id上还是name上?请帮帮忙

我的预期是,如果我们将索引放在id列上,那么查询将在较短的持续时间内给出结果,而如果我们将索引放在name字段上。

寻找性能改进

我的预期是,如果我们将索引放在id列上,那么查询将在较短的持续时间内给出结果,而如果我们将索引放在name字段上。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-28 20:30:44

对于此查询:

代码语言:javascript
复制
select t1.name
from tableA t1 inner join
     tableB t2
     on t1.id = t2.id;

我认为最好的索引应该是tableB(id)。这是用于JOIN的密钥。

在某些情况下,在tableA(id, name)上建立索引可能是最佳选择。如果tableAtableB大得多,这一点尤其正确。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56342298

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档