不使用EXPLAIN不能使用FORCE INDEX

时间:2019-04-05 08:14:14

标签: php mysql

我正在使用MySQL Server版本:5.7.21。

我有一个包含2.804.806行的表,因此当我不使用索引进行查询时,它的运行速度就会变慢。

我在'id'上有一个主索引,即AUTO_INCREMENT

EXPLAIN without using USE INDEX or FORCE

下一步是像这样修改我的查询:

SELECT id, ut_date, servo_on, running_on, arc_on, robot_id FROM process__status_timers USE INDEX (id) WHERE id >934173 AND ut_date > 1546297200000 ORDER BY robot_id , id ASC

但是仍然没有使用我的密钥,所以我使用了FORCE INDEX,最后我得到了EXPLAIN USING FORCE

但是当我删除EXPLAIN时,出现语法错误:

SELECT id, ut_date, servo_on, running_on, arc_on, robot_id FROM process__status_timers FORCE INDEX (PRIMARY) WHERE id >934173 AND ut_date > 1546297200000 ORDER BY robot_id , id ASC ; 
  1.   

    无法识别的关键字。 (在FORCE附近)

  2.   

    无法识别的关键字。(INDEX附近)

  3.   

    意外令牌((附近)

  4.   

    无法识别的关键字。(PRIMARY附近)

  5.   

    意外令牌((附近)

我做错了什么?

预先感谢

0 个答案:

没有答案