0

可能重复:
在 MySQL 中将 2 小时添加到当前时间?

我的服务器目前基于我们东部时间,因为我在英国,所以我需要提前 6 个小时。

在 mysql 中使用NOW()时,我得到了错误的时间,有什么可以添加以NOW()将其提前 6 小时吗?谢谢

4

4 回答 4

1

您想使用DateAdd函数:

例子:

SELECT DATEADD(hour, 6, GetDate())
于 2010-06-03T13:55:25.820 回答
1

参考这个

SELECT ADDTIME(now(), '06:00:00')

在这里看到它的不同之处

SELECT ADDTIME(now(), '06:00:00') as EAST_TIME , now() as UK_TIME
于 2010-06-03T13:58:15.970 回答
1

是的,您可以使用以下date_add功能:

date_add(now(), interval 6 hour)

您也可以使用adddatewhich 是date_add.

还可以考虑将时间作为 UTC 存储在数据库中,并在显示时转换为本地时间。

如果转换是从一个时区到另一个时区而不是一组小时数,您可以使用该convert_tz功能。例子:

convert_tz(now(), '-6:00', '0:00')

或者:

convert_tz(now(), 'US/Eastern', 'MET')
于 2010-06-03T13:59:14.673 回答
0

每个连接时区。每个连接的客户端都有自己的时区设置,由会话 time_zone 变量给出。最初,会话变量从全局 time_zone 变量中获取其值,但客户端可以使用以下语句更改自己的时区:

mysql> SET time_zone = 时区;

该值可以作为表示与 UTC 的偏移量的字符串给出,例如“+10:00”或“-6:00”。

于 2010-06-03T13:58:33.600 回答