从今天开始从数据库中选择

时间:2011-04-12 11:48:28

标签: php mysql database date

我试图从数据库中选择一堆东西。每个都有一个日期,我只想显示其日期等于今天的日期。

$sql="SELECT * FROM bs_events WHERE NOW() ORDER BY eventDate ";

我试着到处寻找,找不到任何东西。

感谢任何帮助人员

5 个答案:

答案 0 :(得分:3)

WHERE eventDate >= CURDATE()"; 

应该解决你的问题

答案 1 :(得分:2)

我想你想要

其中EventDate> = now()

答案 2 :(得分:1)

试试这个

$sql="SELECT * FROM bs_events WHERE NOW() <=  eventDate   ORDER BY eventDate ";

答案 3 :(得分:0)

$sql = "SELECT * FROM bs_events WHERE eventDate >= CURDATE() ORDER BY eventDate";

答案 4 :(得分:0)

重要说明:使用NOW()和CURDATE()会使查询对查询缓存无效。在许多要求 - f.e.主页 - 这可能会导致性能下降。

我更喜欢以下代码段:

$oDate = new DateTime();
$sQuery = "
    SELECT field1, field2 
    FROM bs_events 
    WHERE eventDate >= '".$oDate->format("Y-m-d H:i")."'
    ORDER BY eventDate
";

这将实现您的目标,但会导致查询缓存使用一整分钟。当然,你可以将它调整到更长或更短的时间。