2010-09-27 49 views

回答

5
  • UNIX_TIMESTAMP返回与第二整数从纪元
  • DATE()返回像“字符串yyyy-mm-dd'

比较那些2导致意想不到的结果我确定。 可以使用UNIX_TIMESTAMPDATE,但可以同时使用它们。 (或做UNIX_TIMESTAMP(DATE(NOW()))所以你比较合适的格式。

+0

谢谢你们这些有点愚蠢的我 – kalpaitch 2010-09-27 19:49:39

1

您与UNIX纪元比较日期值(YYYY-MM-DD),所以您的查询不起作用。

只要确保你需要使用正确的数据类型,你需要日期,使用日期时间或日期,而不是时间戳,再加上MySQL表中的时间戳列有特殊属性的事实

另外,使用索引这个日期列你的查询不会被优化,因为where子句中的now()函数现在先尝试获取变量的值,然后使用这个变量运行你的查询,那么MySQL优化器将有机会OPTI mize你的查询。