我的数据库中有一个事件表,其中包括start_date和end_date列.
我经常运行像
where start_date > 'some starting date' and end_date < 'some end date'
Run Code Online (Sandbox Code Playgroud)
我是否可以从start_date和end_date列添加索引中获益?我发现这不是一个=比较,但无论如何也许.
Mik*_*ike 17
MySQL优化器将使用它认为合适的索引:
B树索引可用于使用=,>,> =,<,<=或BETWEEN运算符的表达式中的列比较.
...
有时MySQL不使用索引,即使有索引也是如此.发生这种情况的一种情况是,优化器估计使用索引将需要MySQL访问表中非常大比例的行.(在这种情况下,表扫描可能会快得多,因为它需要较少的搜索.)
资料来源:B树和哈希指数的比较
您可能会发现这些有趣的:
而这个答案和这个答案到为什么MySQL的不超过比较使用索引了更大?.
| 归档时间: |
|
| 查看次数: |
9027 次 |
| 最近记录: |