针对日期范围进行测试
虽然使用 BETWEEN
… AND
…非常诱人的日期范围,但这是有问题的。相反,这种模式避免了大多数问题:
WHERE x >= '2016-02-25'
AND x < '2016-02-25' + INTERVAL 5 DAY
好处:
BETWEEN
是’包容性的’,因此包括最后的日期或秒。- 如果你对
DATETIME
有微秒分辨率,23:59:59
是笨拙和错误的。 - 这种模式避免处理闰年和其他数据计算。
- 无论
x
是DATE
,DATETIME
还是TIMESTAMP
都有效。