如何获得比昨天更好的结果

时间:2011-06-09 15:57:42

标签: mysql

我有一个数据库,用DATETIME格式存储每个条目的日期。我只需要检索比昨天更大的结果。我昨天说,因为我需要今天和前方的结果。

目前我有以下内容。

$yest = mktime(0, 0, 0, date("m"), date("d")-1, date("Y"));
$yest_date = date('n-j-o', $yest);

SELECT * FROM TBL_NAME WHERE DATE_FORMAT(event_date, \"%c-%d-%Y\") > '".$yest_date."'

即使我知道有事件,也不会给出任何结果。任何帮助将不胜感激。

6 个答案:

答案 0 :(得分:13)

SELECT * FROM tbl_name WHERE event_date > DATE_SUB(NOW(), INTERVAL 1 DAY)

答案 1 :(得分:4)

SELECT * FROM TBL_NAME WHERE event_date >= CURDATE()

答案 2 :(得分:4)

WHERE event_date > date(now()) - 1

答案 3 :(得分:4)

Select * from tbl_name WHERE event_date > DATE_SUB(curdate(), INTERVAL 1 DAY)

这应该从昨天开始,而不是从查询运行的24小时开始。

如果您在cron中运行此操作,则应该验证数据库与服务器的时区,以便您在两天内不运行它,打算在12:01运行但实际运行在11: 01由于方差。

答案 4 :(得分:2)

SELECT * FROM tbl_name WHERE field_date > now()- interval 1 day;

答案 5 :(得分:0)

这样做的目的是从今天的第一分钟到今天的最后一分钟选择值。

WHERE scheduled_start_timestamp >= date() AND scheduled_start_timestamp <= date() + 1