PostgreSQL 使用 IANA(Internet Assigned Numbers Authority)时区数据库来处理时区信息。在 POSIX 时区规范中,时区信息通常由一个字符串表示,格式如下:
[±hh[:mm[:ss]]] [stdoffset [dst[offset] [,start[/time],end[/time]]]]
PostgreSQL POSIX 时区规范
其中:
- ±hh[:mm[:ss]] 表示时区的偏移量,例如+02表示东二区,-05表示西五区。
- stdoffset 表示标准时间的偏移量。
- dst[offset] 表示夏令时的偏移量。
- start[/time],end[/time] 表示夏令时的开始和结束规则。
以下是一个示例:
SET TIME ZONE 'EST5EDT';
这将设置时区为东部标准时间(EST)和东部夏令时时间(EDT)。你还可以使用 AT TIME ZONE 子句将时间戳转换为特定时区的时间。
请注意,PostgreSQL 中的时区设置是会话级别的,因此它只会影响当前会话中的日期和时间函数。
转载请注明出处:http://www.zyzy.cn/article/detail/8980/PostgreSQL