【发布时间】:2015-12-19 11:14:41
【问题描述】:
我有一个类似这样的数据库表:
Col_1 | Datetime
test1 2015-12-19 09:00:00
test2 2015-12-18 12:30:00
test3 2015-12-19 10:00:00
test4 2015-12-19 16:45:00
我试图在我的查询中选择 datetime 等于今天日期的所有结果,尽管当我只是使用类似的东西时:
$today = date("Y-m-d");
SELECT * FROM table WHERE datetime = '$today'
它似乎不起作用?如果我将时间添加到$today,它只会选择那些等于当前时间的结果,这不是我想要的?
知道如何做到这一点吗?我什至走到了这完全愚蠢的地步(尽管我编写代码时大约是凌晨 3 点):
$now = date("Y-m-d H:m:s", strtotime('midnight'));
$todays = date(strtotime('midnight'));
$take24hours = date("Y-m-d H:m:s", strtotime('-24 hours', $todays));
$results = mysqli_fetch_assoc(mysqli_query($conn, "SELECT * FROM table WHERE date_added > '$take24hours' AND date_added < '$now')"));
【问题讨论】:
-
SELECT * FROM table WHERE date(`datetime`) = current_date; -
current_date;是 select 语句中的自动函数吗? -
current_date 是mysql提供的ansi标准日期函数
-
似乎工作得很好,如果您添加您的评论作为答案,我很乐意接受它是正确的。感谢您的帮助!