Postgresql 使用to_char时在postgres中插入、更新或更改列

Postgresql 使用to_char时在postgres中插入、更新或更改列,postgresql,insert-update,postgresql-9.4,insert-into,Postgresql,Insert Update,Postgresql 9.4,Insert Into,我所拥有的 postgres 9.4中的3个表格。表1是主表。表2和表3包含一些额外的季度数据(更新乘数)(如2017年第1季度格式为varchar)。表1有一个日期格式的交易日期以及一个“支付价格”列。我添加了一个名为“quarters”的列来填充新数据,这些数据将存储为varchar 我想做什么 在表1中生成一个四次列,我可以使用 SELECT to_char(dateoftransfer, '"Q"Q YYYY') as quarters FROM table_1; 如果我尝试 UPD

我所拥有的

postgres 9.4中的3个表格。表1是主表。表2和表3包含一些额外的季度数据(更新乘数)(如2017年第1季度格式为varchar)。表1有一个日期格式的交易日期以及一个“支付价格”列。我添加了一个名为“quarters”的列来填充新数据,这些数据将存储为varchar

我想做什么

在表1中生成一个四次列,我可以使用

SELECT to_char(dateoftransfer, '"Q"Q YYYY') as quarters
FROM  table_1;
如果我尝试

UPDATE table_1 (quarters)
SELECT to_char(dateoftransfer, '"Q"Q YYYY') as quarters
FROM  table_1;
我得到以下错误

ERROR:  syntax error at or near "quarters"
LINE 1: (quarters)
     ^

我应该使用复制还是插入到位?我希望在表1中显示该列的原因是,我可以使用WHERE语句在表1中生成一个update price列,以找到正确的乘数。这是一个通货膨胀调整计算

我想这就是你想要的

UPDATE table_1 
SET quarters = to_char(dateoftransfer, '"Q"Q YYYY');

UPDATE
命令的语法错误。有关正确的语法,请参阅手册: