从日期减去8天+秒

时间:2014-02-20 00:04:02

标签: php mysql sql date

目前我有一个更新,可以设置如下列:

UPDATE ... SET date_time = DATE_SUB(NOW(), INTERVAL 8 DAY)
...

因此,date_time将保持当前日期减去8天。我的PHP代码中有一个变量,持有秒。而且我希望能够从NOW()中减去它。所以,如果这个变量持有299928秒($ seconds = 299928),我希望能够做到:

UPDATE ... SET date_time = DATE_SUB(NOW(), INTERVAL 8 DAY, $seconds)。我没有看到如何以我在MYSQL查询中使用的方式转换这些秒,考虑到我还想减去8天的间隔。

由于

1 个答案:

答案 0 :(得分:4)

一个选项是简单地使用另一个DATE_SUB函数,包装现有的表达式:

   = DATE_SUB(DATE_SUB(NOW(), INTERVAL 8 DAY), INTERVAL 299928 SECOND)

由于当前表达式返回DATETIME,因此将该函数用作期望DATETIME的另一个函数的参数是有效的。 (类似于NOW()函数在现有DATE_SUB函数中用作参数的方式。)