我想知道为什么我会从这篇文章中获得不同的时间
set timezone to 'UTC';
SELECT timestamptz '2012-03-05 17:00:00+0';
Expected :2012-03-05 17:00:00+00
Got : 2012-03-05 22:30:00
SET timezone TO 'Europe/Berlin';
SELECT '2012-03-05 17:00:00+0'::timestamptz;
Expected : 2012-03-05 18:00:00+01
Got: 2012-03-05 22:30:00
SELECT timestamptz '2012-03-05 18:00:00+1';
Expected : 2012-03-05 17:00:00+00
Got : 2012-03-05 22:30:00
实际上我正在使用DBeaver
作为DB IDE,在那里我们需要在dbeaver.ini
中进行一些调整。
我相信问题是您如何设置时区。
您可以尝试将SET timezone TO
更改为SET TIME ZONE
,看看它是否有效?
您可以看到以下文档以获取更多帮助:https://www.postgresql.org/docs/9.1/datatype-datetime.html#datatype timezones
您的期望是正确的。问题必须是您正在运行不同数据库会话中的语句。
SET
的范围仅限于当前会话。