请原谅我,如果这是一个简单的问题,但我试图回应仅在未来的行,即:大于今天的日期和时间。到目前为止,这是我的代码:
$date = date('Y-m-d');
$time = date("G:i:s", time());
$eventsquery = "SELECT * FROM events as A WHERE tech='$userecho' AND date >= '$date' ORDER BY date ASC, time ASC";
$eventsresult = mysql_query($eventsquery, $eventsdbhandle);
这非常适合给我今天或将来的行, 这个问题是,这将为我提供当天在当前时间之前发生的条目。所以我尝试添加这个:
$eventsquery = "SELECT * FROM events as A WHERE tech='$userecho' AND date >= '$date' AND time >= '$time' ORDER BY date ASC, time ASC";
但我根本没有任何行。我知道这可能很容易解决,但我在这个网站上找不到修复它的东西。任何帮助都会很棒。
表中的时间以这种格式存储:hh:mm:ss ie:14:23:12
答案 0 :(得分:2)
一种方法
SELECT *
FROM events
WHERE tech = ?
AND ADDTIME(date, time) > NOW()
ORDER BY ADDTIME(date, time)
这是 SQLFiddle 演示
答案 1 :(得分:2)
如果您有1列日期时间值,则可以说
"SELECT * FROM table_name WHERE entry_time > NOW()"
但是,如果每个日期和时间有两个不同的列,则会变得复杂 你必须使用
"SELECT * FROM table_name WHERE entry_date > CURDATE() OR (entry_date = CURDATE() AND entry_time > CURTIME()"