mysql 使用索引和不使用索引的区别

时间:2024-03-14 06:57:25
所有原则都建立在最左匹配原则上,如果多个字段同时匹配,则最左匹配

1、首先介绍一下:这个表的主键在live_id和user_id上(有先后顺序),
如果使用live_id查询则使用索引,如果使用user_id则不使用索引
2、order by 不使用索引
3、group by 使用索引时,字段在第一个字段时 ,使用索引,字段在第二个字段时,不使用索引
4、in查询操作,查询字段在第一个字段时 ,使用索引,查询字段在第二个字段时,不使用索引(not in在表中的查询数量大于30%的时候是全表扫描的,用不到索引。所以没有可以优化的。) 
5、like 查询操作,如果第一个字符不是正则符号,则查询字段在第一个字段时 ,使用索引,查询字段在第二个字段时,不使用索引
          如果第一个字符是正则符号,则都不使用索引
6、如果没有搜索条件、没有排序条件、没有group by条件时,就不使用索引

7、union 查询操作,哪个字段是第一个索引字段,就在那个查询子句上使用索引

mysql 使用索引和不使用索引的区别

mysql 使用索引和不使用索引的区别


mysql 使用索引和不使用索引的区别


mysql 使用索引和不使用索引的区别


order by 没有使用索引

mysql 使用索引和不使用索引的区别

mysql 使用索引和不使用索引的区别


group by 使用了索引,,字段在第一个字段时 ,使用索引,字段在第二个字段时,不使用索引 

mysql 使用索引和不使用索引的区别

mysql 使用索引和不使用索引的区别


in查询操作,查询字段在第一个字段时 ,使用索引,查询字段在第二个字段时,不使用索引 

mysql 使用索引和不使用索引的区别

mysql 使用索引和不使用索引的区别


like 查询操作,如果第一个字符不是正则符号,则查询字段在第一个字段时 ,使用索引,查询字段在第二个字段时,不使用索引
          如果第一个字符是正则符号,则都不使用索引
mysql 使用索引和不使用索引的区别

mysql 使用索引和不使用索引的区别

mysql 使用索引和不使用索引的区别

mysql 使用索引和不使用索引的区别

mysql 使用索引和不使用索引的区别


union 查询操作,哪个字段是第一个索引字段,就在那个查询子句上使用索引 

mysql 使用索引和不使用索引的区别

mysql 使用索引和不使用索引的区别

mysql 使用索引和不使用索引的区别

mysql 使用索引和不使用索引的区别

相关文章