SELECT * FROM orders WITH (INDEX(idx));
当我解雇上述查询时,我收到了错误
mysql#1064 - 您的SQL语法错误
我已创建索引
create index idx on orders(date,status);
有人能告诉我正确的语法吗?
答案 0 :(得分:1)
如果索引合适,将在不明确指定的情况下使用它。
鉴于您正在使用SELECT *
我不希望使用您的索引(即使INDEX提示具有正确的语法)。选择取决于查询优化器的启发式。
正确的语法是:
SELECT * FROM orders USE INDEX(idx);
参考:Index Hints
另外,请注意:100次中有99次,指定不应该指定索引提示。让优化者完成它的工作。