我是PostgreSQL的新手,我想知道是否有一种直接的方法可以使用函数将表中的时间戳值转换为不同的时区。在我的情况下,它是UTC到EST。
例如,我需要将这些值转换为EST (不只是一个值,而是表中的所有值)
date
-------------------
2015-10-24 16:38:46
2016-01-19 18:27:00
2016-01-24 16:14:34
2016-02-09 23:05:49
2016-02-11 20:46:26
发布于 2017-05-31 15:11:55
类似地执行
SELECT '2015-10-24 16:38:46'::timestamp AT time zone 'EST';
timezone
------------------------
2015-10-24 21:38:46+00
(1 row)
发布于 2020-05-19 01:55:22
我通常把所有东西都留在UTC,在需要展示的时候进行转换。我使用类似这样的东西:
SELECT my_date_utc AT time zone 'utc' at time zone 'est' From ....
发布于 2020-12-14 18:26:55
如果你在访问你的区域时遇到问题,你也可以简单地传递你的区域间隔。将时间戳从IST转换为UTC。
SELECT '2020-12-14 06:38:46'::timestamp AT time zone INTERVAL '+05:30';
timezone
------------------------
2015-10-24 11:38:46+00
(1 row)
将时间戳从UTC转换为IST。
SELECT '2020-12-14 06:38:46'::timestamp AT time zone INTERVAL '-05:30';
timezone
------------------------
2020-12-14 12:08:46+00
(1 row)
https://stackoverflow.com/questions/36341060
复制相似问题