参考
MySQL查询优化器的在索引选择的规则可以概括为:
1、对无过滤条件、索引可以覆盖的查询。查询优化器选择覆盖索引键值最短的索引进行查询;
2、对无过滤条件、无索引覆盖的查询。查询优化器选择全表扫描;
3、对有过滤条件、索引可以覆盖的查询。查询优化器优先基于代价的方式对过滤条件进行处理。如果可以索引查找,将选择代价最低的索引进行查找。如果是全表扫描,则通过查找键值最短的覆盖索引进行查询,并通过过滤条件进行过滤。
4、对有过滤条件、无索引覆盖的查询。查询优化器基于代价的方式对过滤条件进行处理,生成查询计划。
MySQL 索引选择源码分析
最新推荐文章于 2024-07-19 02:05:12 发布