下面最好的方法是什么:

SELECT * FROM users WHERE created >= today;

注意:created是一个datetime字段。


当前回答

SELECT * FROM users WHERE created >= CURDATE();

但我想你的意思是今天创造的

你可以比较datetime和date,例如:SELECT NOW() < CURDATE()给出0,SELECT NOW() = CURDATE()给出1。

其他回答

SELECT * FROM users WHERE created >= NOW();

如果列是datetime类型。

SELECT * FROM table_name WHERE CONCAT( SUBSTRING(json_date, 11, 4 ) ,  '-', SUBSTRING( json_date, 7, 2 ) ,  '-', SUBSTRING(json_date, 3, 2 ) ) >= NOW();

json_date(“05/11/2011”)

有标记的答案会误导人。问题是DateTime,但所需要的只是CURDATE()。

最简短而正确的回答是:

SELECT * FROM users WHERE created >= CURRENT_TIMESTAMP;
SELECT * FROM users WHERE created >= CURDATE();

但我想你的意思是今天创造的

你可以比较datetime和date,例如:SELECT NOW() < CURDATE()给出0,SELECT NOW() = CURDATE()给出1。

如果'created'是datetime类型

SELECT * FROM users WHERE created < DATE_ADD(CURDATE(), INTERVAL 1 DAY);

CURDATE()也表示“2013-05-09 00:00:00”