Mysql 强制使用索引 force index,提高sql查询效率

一、背景

之前写过一篇文章《oracle强制走索引,提高sql查询效率》:https://blog.csdn.net/weixin_41287692/article/details/79350991

由于现在使用 mysql 多一些,所以搜索了一下 mysql 是否也有类似的强制使用索引

二、使用方法

  1. 语法

    force index(强制要走的那个索引)

  2. 示例

强制使用索引前

SELECT  * FROM XXX_log WHERE (`ctime` BETWEEN \'2017-09-11 09:34:13\'  AND \'2017-10-11 09:34:13\')
and     id > 27851
AND column1 = \'xxx\'
AND (column2 = \'null\' OR LENGTH(column2) > 91)
ORDER BY  id DESC LIMIT 0, 30

强制使用索引后

SELECT  * FROM XXX_log force index(ctime) WHERE (`ctime` BETWEEN \'2017-09-11 09:34:13\'  AND \'2017-10-11 09:34:13\')
and     id > 27851
AND column1 = \'xxx\'
AND (column2 = \'null\' OR LENGTH(column2) > 91)
ORDER BY  id DESC LIMIT 0, 30

via:https://www.cnblogs.com/lizhaoyao/p/7691407.html