MySQL 8.0的新增功能探索-FORCE INDEX,IGNORE INDEX的优化程序提示

  • FORCE INDEX,IGNORE INDEX的优化程序提示。 MySQL 8.0引入了索引级优化器提示,这些提示与第8.9.4节”索引提示”中所述的传统索引提示类似。新的提示这里列出,与他们一起FORCE INDEXIGNORE INDEX 等价物:

    例如,以下两个查询是等效的:

    SELECT a FROM t1 FORCE INDEX (i_a) FOR JOIN WHERE a=1 AND b=2;

    SELECT /*+ JOIN_INDEX(t1 i_a) */ a FROM t1 WHERE a=1 AND b=2;

    前面列出的优化器提示在语法和用法上与现有索引级优化器提示遵循相同的基本规则。

    这些优化器提示旨在替换FORCE INDEXIGNORE INDEX,我们计划在将来的MySQL版本中弃用和,然后从MySQL中删除。他们没有实现的单个精确等效项USE INDEX;相反,你可以使用一个或多个 NO_INDEXNO_JOIN_INDEXNO_GROUP_INDEX,或 NO_ORDER_INDEX达到同样的效果。

    有关更多信息和使用示例,请参见 索引级优化器提示