子查询与联接我重构了我们从另一家公司继承的应用程序中的一个缓慢部分,以使用内部连接,而不是像以下这样的子查询:WHERE id IN (SELECT id FROM ...)重构查询运行速度大约快100倍。(~50秒~0.3)我预期会有改善,但谁能解释一下为什么这么剧烈?WHERE子句中使用的列都已编入索引。SQL是否在WHERE子句中每一行执行一次查询?更新-解释结果:不同之处在于“其中id in()”查询的第二部分-2 DEPENDENT SUBQUERY submission_tags ref st_tag_id st_tag_id 4 const 2966 Using wherevs1索引行与联接: SIMPLE s eq_ref PRIMARY PRIMARY 4 newsladder_production.st.submission_id 1 Using index
3 回答
MYYA
TA贡献1868条经验 获得超4个赞
添加回答
举报
0/150
提交
取消