对我来说,将“UTC-4”与“-04”关联似乎更直观,反之亦然。我在这里附上了一张图片,显示了在相应时区中选择当前时间时所得到的结果。
r8xiu3jd1#
根据@a_horse_with_no_name评论中的链接,UTC-4/UTC+4是POSIX格式的时区名称,因此UTC的方向是相反的。换句话说,+从格林威治向西,-向东。您的选择是:1.认识到这一点,并根据需要扭转你的手势。1.使用已知的时区,例如America/Porto_Velho(-04)或Asia/Baku(+04)。但是,如果该时区的DST规则发生更改,则此偏移量可能会更改。1.我现在在美国的PST:
UTC-4/UTC+4
UTC
+
-
America/Porto_Velho
Asia/Baku
DST
PST
select current_time; current_time -------------------- 09:05:28.464408-08 select (split_part((current_time at time zone 'UTC' - interval '4 hours')::varchar, '+', 1) || '-04')::timetz; timetz -------------------- 13:05:39.056446-04 select (split_part((current_time at time zone 'UTC' + interval '4 hours')::varchar, '+', 1) || '+04')::timetz; timetz -------------------- 21:05:50.624686+04
更新
POSIX时区说明的引用位置已更改为POSIX timezone,并且为:偏移量字段指定与UTC的小时数,也可以指定分钟数和秒数。它们的格式为hh[:mm[:ss]],可以选择带有前导符号(+或-)。正号用于格林威治以西的区域。(请注意,这与PostgreSQL中其他地方使用的ISO-8601符号约定相反。)hh可以有一个或两个数字; mm和ss(如果使用)必须有两个。
1条答案
按热度按时间r8xiu3jd1#
根据@a_horse_with_no_name评论中的链接,
UTC-4/UTC+4
是POSIX格式的时区名称,因此UTC
的方向是相反的。换句话说,+
从格林威治向西,-
向东。您的选择是:1.认识到这一点,并根据需要扭转你的手势。
1.使用已知的时区,例如
America/Porto_Velho
(-04)或Asia/Baku
(+04)。但是,如果该时区的DST
规则发生更改,则此偏移量可能会更改。1.我现在在美国的
PST
:更新
POSIX时区说明的引用位置已更改为POSIX timezone,并且为:
偏移量字段指定与UTC的小时数,也可以指定分钟数和秒数。它们的格式为hh[:mm[:ss]],可以选择带有前导符号(+或-)。正号用于格林威治以西的区域。(请注意,这与PostgreSQL中其他地方使用的ISO-8601符号约定相反。)hh可以有一个或两个数字; mm和ss(如果使用)必须有两个。