Postgresql-日期范围进入BST时的时区



我有一个非常简单的表,其中包含一个存储UTC datetime值的start_date字段(timestampz)。我需要返回表中包含的日期,并根据British Summer Time(BST)进行调整,但我遇到的问题是,无论UTC日期的值如何,AT TIME ZONE BST都会将其添加1小时;如果日期发生在February中(BST开始之前),则UTC值为正确值。如果日期值来自March(BST启动后),则UTC值需要添加+01

表格数据

2014-02-16 00:00:000+00
2014-04-16 00:00:000+00
SELECT start_date AT TIME ZONE 'BST' from t1 

将+01小时添加到两个值

2014-02-16 00:01:000
2014-04-16 00:01:000

有没有一种简单的方法可以实现以下目标

2014-02-16 00:00:000
2014-04-16 00:01:000

BST根据定义是UTC+01:00。因此,它按预期工作。使用Europe/London获得您想要的结果。

相关内容

  • 没有找到相关文章

最新更新