我的数据库中有这个时区America/Sao_Paulo
。
例:
2017-02-07 10:06:32.157564-02
ts = db.Column(db.DateTime(timezone=True), index=True, server_default=func.now())
我的问题是,这意味着10:06:32
已经比 UTC 少了两个小时?所以 -2 只是提供信息,这是正确的时间。
或者这意味着我们需要从10:06:32
中减去两个小时 (-2( 才能获得正确的时区America/Sao_Paulo
?
我在GMT+2 atm中,所以为了模拟你的tz,我将其设置为你的,然后选择你的时间ATM和UTC时间:
t=# set timezone TO 'America/Sao_Paulo';
SET
Time: 0.222 ms
t=# select now() sao_paulo, now() at time zone 'UTC' utc;
sao_paulo | utc
-------------------------------+----------------------------
2017-02-07 13:54:35.112992-02 | 2017-02-07 15:54:35.112992
(1 row)
Time: 0.163 ms