在MySQL中的日期字段上放置索引

Tob*_*oby 5 mysql indexing database-indexes

对于我来说,将索引放在日期字段上是否会有任何实际好处,这些日期字段将主要用于使用类似的东西的查询中.

dateField < 'var'
Run Code Online (Sandbox Code Playgroud)

'var' BETWEEN dateField1 AND dateField2
Run Code Online (Sandbox Code Playgroud)

搜索得到了很多,但我从来没有对它们进行直接比较"=".

Dan*_*llo 16

当然是.范围搜索将受益于索引,就像平等搜索一样.

引用MySQL参考手册:: MySQL如何使用索引:

B树指数特征

B树索引可用于使用=,>,> =,<,<=或BETWEEN运算符的表达式中的列比较.如果LIKE的参数是不以通配符开头的常量字符串,则索引也可用于LIKE比较.

在某些情况下,如果范围最终会太大,优化器可能决定不使用索引,因为表扫描实际上可能更快.用EXPLAIN看哪个(如果有的话)的索引将在您的查询中使用.