首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在MySQL中,'USE INDEX‘不起作用,但'FORCE Index’似乎工作正常

在MySQL中,'USE INDEX‘不起作用,但'FORCE Index’似乎工作正常
EN

Stack Overflow用户
提问于 2021-02-02 17:52:36
回答 1查看 63关注 0票数 0
代码语言:javascript
运行
复制
EXPLAIN EXTENDED 

SELECT * FROM table_name

--  FORCE INDEX(dummy_date)

 USE INDEX(dummy_date)

where dummy_date 

between '2020-12-01' AND '2020-12-31'

AND name='something';

ALTER TABLE `table_name` ADD INDEX `dummy_date_index`(`dummy_date`)

当我执行这个查询时,索引不起作用,但是如果我使用force index,那么索引就会起作用。请告诉我对数百万行使用索引的正确方法。

EN

回答 1

Stack Overflow用户

发布于 2021-02-03 02:40:09

甚至比MySQL not using indexes with WHERE IN clause?更好

使用更好的索引,不要费心使用或强制:

代码语言:javascript
运行
复制
INDEX(name, dummy_date)

无论如何,如果表的大部分都在那个月,那么使用INDEX(dummy_date)的效率就比扫描表的效率低。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66007286

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档