join多表关联时,也只能用到一个索引吗?
游北亮
博客专家认证 2015-06-15 05:30:22 求教一个问题:
select * from a
inner join b on a.f1 = b.f1
inner join c on a.f2 = c.f2
where a.f3=123
SQL如上,如果a表的f1、f2、f3这3个字段都创建了索引,
这个sql会用到a表的哪个索引?
是3个索引都用上吗?还是只用到f3索引?
我用Explain看,是只用到了f3这一个索引,
那是不是意味着,先根据f3过滤后的结果,再去跟b表和c表进行关联呢?