我想添加一个名为column_ourcountry_time的列,它将显示每行创建时间的时间戳DATE_ADD INTERVAL 10小时到每行中服务器的当前时间。
当我使用TIMESTAMP时它会保存当前的服务器时间,没关系,但我想存储我们国家的时间戳,即服务器时间+10小时。任何人都可以帮助我完成它。
提前谢谢你
你忠实的
埃曼
答案 0 :(得分:0)
你的意思是
select addtime(now(), '10:00:00');
因为这样可以增加时间并保持日子(24小时)等等。
如果'10:00:00'部分是另一列timezone_offset
中的变量'10',我想你可以使用它:
select addtime(now(), concat(timezone_offset, ':00:00')) from table;
- 编辑1
根据timezone_offset和MySQL服务器的时区,您可能必须在使用addtime之前更改timezone_offset:
如果MySQL运行UTC +1
并保存timezone_offset compared to UTC
,则必须更改所有timezone_offset -1
,因为now()
不是UTC时区。
- 编辑2
我发现将所有时间存储在UTC中是最佳做法,因为这是最简单的计算方法。如果你正在做任何关于时区和偏移的事情:做一切UTC。 (确保您的MySQL服务器也具有UTC作为时区。)
答案 1 :(得分:0)
尝试
SELECT NOW() + INTERVAL 10 HOUR
答案 2 :(得分:0)