我已经测试了好几个小时了,似乎无法让它发挥作用。以下是我正在使用的简化版本。每次我测试它我得到0结果。我在数据库中有许多条目是在之前和之后:start。
$bind = array(':start'=>'01-31-2015 10:00 AM' );
$select = "TIMESTAMPDIFF(SECOND,dateTime,:start)>0";
$results = $db->select("schedule", $select, $bind);
我想我应该给出如下的简单版本。
SELECT * FROM schedule WHERE TIMESTAMPDIFF(SECOND,dateTime,'01-31-2015 10:00 AM')>0
在上面的选择中,dateTime的格式与:start。
相同我不知道是否必须使用特定的日期格式,但如果可能的话,我想使用现有格式。
答案 0 :(得分:1)
在您的日期字符串周围包裹TIMESTAMP()
,因为有时MySQL不会将其解释为日期,您会得到奇怪的结果。 MySQL的日期格式也是
YYYY-MM-DD HH:MM:SS
SELECT * FROM schedule WHERE TIMESTAMPDIFF(SECOND,dateTime,TIMESTAMP('2015-01-31 10:00:00'))>0
答案 1 :(得分:1)
保持简单。不确定你到底想要做什么。
SELECT * FROM schedule WHERE `dateTime` < '2015-01-31 10:00:00'