在MySQL日期时间表示中添加N小时

时间:2013-12-01 14:46:08

标签: php mysql

如何在MySQL日期时间表示中再添加N个小时?例如 当前时间:2013-12-01 19:30:13(或者我可以在PHP中获得日期(“Y-m-d H:i:s”))

我怎样才能得到这个:2013-12-01 22:30:13(又增加3个小时)?

日期(“Y-m-d H:i:s”)+ 3在PHP中不起作用

3 个答案:

答案 0 :(得分:1)

PHP中的

$new_time = date("Y-m-d H:i:s", strtotime('+3 hours');

答案 1 :(得分:1)

在MySQL中,您可以使用date_add

来自文档:

  

DATE_ADD(日期,INTERVAL expr单位)

     

这些函数执行日期算术。 date参数指定   开始日期或日期时间值。 expr是一个指定的表达式   要从开始日期添加或减去的间隔值。   expr是一个字符串;对于负间隔,它可能以“ - ”开头。单元   是一个关键字,表示表达式应该在的单位   解释

     

INTERVAL关键字和单位说明符不区分大小写。

根据您的情况,您可以这样做:

date_add(now(), interval 3 HOUR)

sqlfiddle demo

答案 2 :(得分:1)

这取决于你想要去哪里。

在mysql中

SELECT NOW() + INTERVAL 3 HOUR

SELECT CAST('2013-12-01 23:49:09' AS DATETIME) + INTERVAL 3 HOUR
php中的

Date("Y-m-d h:i:s", time() + 3600 * 3)