mysql查询只检索带有start_date> now()的记录

kal*_*tch 0 php mysql

我试图检索start_date大于当前时间戳的所有记录.任何想法为什么这可能不起作用:

WHERE (UNIX_TIMESTAMP(event_dates.start_date)) > DATE(NOW())
Run Code Online (Sandbox Code Playgroud)

这是示例start_date列 2010-10-30

Wri*_*ken 5

  • UNIX_TIMESTAMP返回一个自纪元以来的第二个整数
  • DATE()返回一个像'yyyy-mm-dd'这样的字符串

比较那些2会导致意想不到的结果我敢肯定.使用UNIX_TIMESTAMPDATE,但两者都做.(或者这样做UNIX_TIMESTAMP(DATE(NOW())),你要比较适当的格式.