所以我有这个:
(CURDATE() BETWEEN start_date AND end_date)
Run Code Online (Sandbox Code Playgroud)
工作良好.
但是当CURDATE()2011-12-02和end_date2011-12-02它会抢到这一排吗?
例如我的start_date是2011-12-01 00:00:00,我的结束日期是2011-12-02 23:59:59
因此它仅在日期介于两者之间时有效,但如果它在其end_date自身上则不起作用.
或者它也应该检查时间,因为它仍然需要使用此查询选择,例如2011-12-02 15:30:00.
我怎样才能做到这一点?
Mar*_*rco 26
好吧,你可以试试
CURDATE() BETWEEN start_date AND DATE_ADD(end_date, INTERVAL 1 DAY)
Run Code Online (Sandbox Code Playgroud)
由于这两列都是时间戳,因此您需要确保时间不会让您失望。为了防止时间绊倒您,请将时间戳转换为日期。
where current_date between cast(start_date as date)
and cast(end_date as date);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
25703 次 |
| 最近记录: |