-1

我们正在尝试在运行时将数据从 database1 (DB1) 复制到 database2 (DB2)。DB1 和 DB2 位于两个不同的时区,比如说 tz1 和 tz2。我们希望在动态复制到 DB2 时将 DB1 Time 列转换为 tz2。我们尝试使用 convert_tz() 和子查询的组合,但无法使其工作。任何正确方向的指针将不胜感激。

MariaDB 版本是 10.3.7

4

2 回答 2

0

感谢大家的回复和投票。我现在已经设法解决了手头的问题。下面的查询解决了它(由于明显的原因不是确切的):

insert into DB2.tb2 select C1,convert_tz(T1,'UTC','ASIA/SHANGHAI'), C2, C3 from DB1.tb1 where C1 = 'xxx';

于 2020-02-06T12:26:28.337 回答
0

无需接触时区的东西,而是存储到TIMESTAMP列中并确保客户端知道他们所在的时区。这样,存储的时间戳会根据读者的位置自动调整。

于 2020-02-11T19:31:11.190 回答