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

2、order by 不使用索引 3、group by 使用索引时,字段在第一个字段时 ,使用索引,字段在第二个字段时,不使用索引 4、in查询操作,查询字段在第一个字段时 ,使用索引,查询字段在第二个字段时,不使用索引(not in在表中的查询数量大于30%的时候是全表扫描的,用不到索引。所以没有可以优化的...
mysql 使用索引和不使用索引的区别
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 查询操作,哪个字段是第一个索引字段,就在那个查询子句上使用索引2018-03-02
所有原则都建立在最左匹配原则上,如果多个字段同时匹配,则最左匹配
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 查询操作,哪个字段是第一个索引字段,就在那个查询子句上使用索引

order by 没有使用索引

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

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

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

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

2018-03-02
mengvlog 阅读 9 次 更新于 2025-07-20 17:27:59 我来答关注问题0
檬味博客在线解答立即免费咨询

mySQL相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部