如何在Postgres中更改表格以显示Time Zone缩写的时间戳(2004-10-19 10:23:54 EST)

时间:2016-12-07 14:32:12

标签: postgresql datetime alter-table alter sql-timestamp

我想将我的表格行从2011-06-30 05:59:59 + 00格式转换为2011-06-30 05:59:59 CDT格式

1 个答案:

答案 0 :(得分:1)

正如蒂姆所说,postgres不存储TZ信息。您无法以这种方式更改列。除非您创建功能或视图或其他东西(无论如何都不会改变表格)。你做了什么,change timezone看你的需要:

  

timezone(string)

     

设置显示和解释的时区   时间戳。如果没有明确设置,服务器会初始化它   变量到其系统环境指定的时区。看到   第8.5.3节了解更多信息。

使用formatting显示TZ信息...就像这里:

b=# select now();
             now
-----------------------------
 2016-12-07 15:13:35.1369+00
(1 row)

b=# set timezone = EST;
SET

b=# select to_char(now(),'YYYY-MM-DD HH24:MI:SS TZ');
         to_char
-------------------------
 2016-12-07 10:13:55 EST
(1 row)