在postgresql数据库时间戳中保留用户时区

dm7nw8vv  于 2022-11-04  发布在  PostgreSQL
关注(0)|答案(1)|浏览(155)

我有一个postgresql数据库,用来存储包含时区(UTC偏移量)的日期时间。我使用了timestampz类型,因为它似乎是我所需要的,但当我插入一个日期时间时,UTC偏移量被转换为UTC+00:
例如,如果我插入2022-10-20 00:00:00+01,实际存储的数据将变为2022-10-19 23:00:00+00
这看起来并不像很多,但是我们在这个过程中丢失了一些信息。有没有一种方法可以保留偏移量而不添加一个列来存储这些信息(或时区)?

yx2lnoni

yx2lnoni1#

不,在这方面PostgreSQL与SQL标准有分歧。如果你想保留时区信息,你需要一个额外的列。如果你这样做,考虑存储IANA时区名称,如Europe/Paris,而不是UTC偏移量。

相关问题