【发布时间】:2018-04-17 23:43:24
【问题描述】:
我遇到了以下 SQL 语句,它对 at time zone 有这种奇怪的用法。
select timestamp '2000-01-01 12:00:00' at time zone 'utc+5' at time zone 'utc+5';
文档没有太大帮助,但通过以下示例,at time zone 似乎可以以两种不同的方式使用:
示例(假设当地时区为 PST8PDT):
SELECT TIMESTAMP '2001-02-16 20:38:40' AT TIME ZONE 'MST';结果: 2001-02-16 19:38:40-08
SELECT TIMESTAMP WITH TIME ZONE '2001-02-16 20:38:40-05' AT TIME ZONE 'MST';结果:2001-02-16 18:38:40
第一个例子需要一些时间 没有时区的标记并将其解释为 MST 时间 (UTC-7),即 然后转换为 PST (UTC-8) 进行显示。第二个例子取 以 EST (UTC-5) 指定的时间戳并将其转换为本地时间 MST (UTC-7)。
【问题讨论】:
标签: postgresql date timezone timestamp