我需要执行一个mysql select查询,其中表中的日期时间字段小于今天的日期时间为凌晨2点。
我将如何构建此
SELECT * FROM tbl WHERE datetimefield < (DATE(NOW()) and time 2am)
感谢您的帮助。
答案 0 :(得分:3)
这有效:
SELECT * FROM tbl WHERE datetimefield < DATE_ADD(CURDATE(), INTERVAL 2 HOUR)
fiddle - 在小提琴中,我使用了硬编码日期'2013-05-04',因此以后可以正常使用。
答案 1 :(得分:0)
SELECT * FROM tbl WHERE datetimefield&lt; STR_TO_DATE(concat(curdate(),'','02'),'%Y-%m-%d%H')