子查詢與聯接我重構了我們從另一家公司繼承的應用程序中的一個緩慢部分,以使用內部連接,而不是像以下這樣的子查詢: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
子查詢與聯接
ITMISS
2019-07-13 09:20:34