将时间戳与日期变量(MySQL 和 PHP)进行比较


Comparing timestamp with date variable (MySQL and PHP)

任何帮助都非常感谢。

假设我有一个带有值为"1305590400"的时间戳列的 MySQL 数据库,我如何将其与 PHP 变量"2011-05-17"进行比较?我想完全忽略时间部分,只比较日期。

目前,我正在尝试使其与以下内容一起工作,但它没有返回任何结果:

WHERE  FROM_UNIXTIME('timestamp_column','%Y-%m-%d') = '" . $date. "'

您不会得到可能$date有一些时间偏移且不等于您所在时区00:00:00的结果。

WHERE timestamp_column BETWEEN '" . strtotime($date) . "' AND '" . strtotime($date, '+1 day') . "'

或者更准确地说:

    WHERE timestamp_column >= '" . strtotime($date) . "'
      AND timestamp_column < '" . strtotime($date, '+1 day') . "'

SELECT [...] WHERE '$you_var' = date(`timestamp_column`);

MySQL date() 函数

您始终可以将时间戳转换为格式化日期。

SELECT FROM_UNIXTIME(1358871753,'%Y %D %M');

制作时间:2013年1月22日