【MYSQL】 exist 与 in 的性能比较

没有亲自做过试验,是从网上看帖子得到的结论。记录一下

先说结论

子表数据量比外表数据量少,使用in。
子表数据量比外表数据量大,使用exists。
子表与外表数据量大小差不多,用in与exists的效率相差不大。
无论那个表大,用not exists都比not in要快。

再来分析(引用一些结论)

mysql中的in语句是把外表和内表作hash 连接,而exists语句是对外表作loop循环,每次loop循环再对内表进行查询。






参考的帖子:

posted @ 2023-02-06 20:51  aaacarrot  阅读(150)  评论(0编辑  收藏  举报