选择具有特定日期的行



我通过POST将变量"lasttime"发送到我的PHP脚本。此变量以字符串形式包含时间戳。在我的MySQL数据库中,我有一列"时间"。此列的类型为"TIMESTAMP",并通过更新当前时间戳来输入。

我想从数据库中选择变量$lasttime中时间戳之后有时间戳的所有行。

我的查询:

SELECT * FROM mytable WHERE UNIX_TIMESTAMP(time) > '$lasttime'

问题是,所有的行都会被返回。我该怎么解决?

如果您在$lasttime中传递一个字符串格式的日期时间(例如2014-04-19 03:04:05),则必须首先将其规范化为unixtime:$unixtime = strtotime($lasttime)然后sql查询将看起来像SELECT * FROM mytable WHERE UNIX_TIMESTAMP(time) > $unixtime

这样做可能吗
$time = date("Y-m-d H:i:s", $lasttime); SELECT * FROM mytable WHERE timediff('$time',time) > 0

time是数据库中的列。

我现在已经将其更改为

$time = date("Y-m-d H:i:s", $lasttime); SELECT * FROM mytable WHERE timediff('$time',time) < 0

而且效果很好。。。

相关内容

  • 没有找到相关文章

最新更新