MySQL日期比较功能

时间:2010-08-26 11:09:59

标签: mysql date

在我的表中,日期以"2010-08-26 09:00:00"格式存储,因此yyyy-mm-dd。我想选择日期字段为“今天”的所有字段,因此在2010-08-26 00:00:012010-08-26 23:59:59之间选择。

只使用较大和较小的运算符不起作用,MySQL是否有一些内置的日期比较功能可以做到这一点?

编辑:我应该提到日期存储为datetime字段

5 个答案:

答案 0 :(得分:7)

... WHERE DATE(field)=CURDATE()

... WHERE DATE(field)=CURRENT_DATE

... WHERE DATE(field)=CURRENT_DATE()

选择一个!

答案 1 :(得分:2)

我建议[...] WHERE DATEDIFF(CURDATE(),date_field) = 0 [...]

答案 2 :(得分:1)

答案 3 :(得分:1)

只是对未来的建议:在varchar列中存储日期几乎总是一个非常糟糕的主意。

答案 4 :(得分:0)

使用DATE()函数,您应该能够构造一个值进行比较:

DATE(2010-08-26 12:13:24)

将为您返回日期部分,即。 2010-08-26