下面最好的方法是什么:
SELECT * FROM users WHERE created >= today;
注意:created是一个datetime字段。
下面最好的方法是什么:
SELECT * FROM users WHERE created >= today;
注意:created是一个datetime字段。
当前回答
SELECT * FROM myTable WHERE DATE(myDate) = DATE(NOW())
阅读更多: http://www.tomjepson.co.uk/tutorials/36/mysql-select-where-date-today.html
其他回答
SELECT * FROM myTable WHERE DATE(myDate) = DATE(NOW())
阅读更多: http://www.tomjepson.co.uk/tutorials/36/mysql-select-where-date-today.html
SELECT * FROM users WHERE created >= NOW();
如果列是datetime类型。
有标记的答案会误导人。问题是DateTime,但所需要的只是CURDATE()。
最简短而正确的回答是:
SELECT * FROM users WHERE created >= CURRENT_TIMESTAMP;
您可以返回所有行,然后在if语句中使用PHP datediff函数,尽管这会给服务器带来额外的负载。
if(dateDiff(date("Y/m/d"), $row['date']) <=0 ){
}else{
echo " info here";
}
SELECT * FROM users WHERE created >= CURDATE();
但我想你的意思是今天创造的
你可以比较datetime和date,例如:SELECT NOW() < CURDATE()给出0,SELECT NOW() = CURDATE()给出1。