前端之家收集整理的这篇文章主要介绍了
mysql – 它是否提高了索引日期列的性能?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个包含数百万行的表,其中一列是TIMESTAMP,我经常选择日期范围.是否可以提高性能以对该列进行索引,还是不会提供任何显着的改进?
编辑:
所以,我已经将TIMESTAMP列编入索引.以下查询
从日期(‘2013-10-10’)和日期(now())之间的日期(interaction_time)的交互中选择计数(*)
需要3.1秒.
交互表中只有300多万条记录.
上面的查询产生~976k的结果
这似乎是合理的时间来执行此任务吗?
最佳答案
如果要提高
查询效率,需要做两件事:
>首先,索引列.
>其次,这一点更为重要,请确保查询的条件是可以使用的,即可以使用索引.特别是,不应在列上使用函数.在您的示例中,编写条件的一种方法是:
WHERE interaction_time >= '2013-10-10'
AND interaction_time < (CURRENT_DATE + INTERVAL 1 DAY)