不同的TimeZone输出错误的值

问题描述 投票:1回答:3

我想知道为什么我从这个帖子Post得到不同的时间

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
postgresql timestamp timezone timestamp-with-timezone
3个回答
0
投票

我相信问题是你如何设置你的时区。

你能尝试将SET timezone TO改为SET TIME ZONE并查看它是否有效吗?

您可以查看以下文档以获得更多帮助:https://www.postgresql.org/docs/9.1/datatype-datetime.html#DATATYPE-TIMEZONES


0
投票

你的期望是正确的。问题必须是您在不同的数据库会话中运行语句。

SET的范围仅限于本届会议。


0
投票

实际上我使用DBeaver作为DB IDE,我们需要在dbeaver.ini做一些调整,请参考这个post以获得更多洞察力

© www.soinside.com 2019 - 2024. All rights reserved.