mysql in和not in查询速度优化方法

mysql | 2019-09-13 10:02:39

mysql in和not in速度慢的优化方法:


一、in和not in为什么会慢

本文只讲解in,not in。为什么mysql in会慢呢?是因为in语句是要扫描全表把外表和内表作hash连接。所以速度很慢。知道为什么慢那优化就方便了。


二、优化方法

①建索引 如果要查询的字段没索引就见索引吧,虽然索引对in没有优化作用(还是要扫描全表),但是下面优化的基础。

②如果是有序的序列就换成>大于<小于。

③如果外表小in子句大就换成exists。

④有索引的话改成join子查询会快很多。


总之还是那句话,sql的优化宗旨还是要尽量避免全表扫描



登录后即可回复 登录 | 注册
    
关注编程学问公众号