使用 pgadmin 4 和 sql 将字段从一列复制到另一列?

使用 pgadmin 4 和 sql 将字段从一列复制到另一列?

我是 Postgresql 新手,在 Mac 上使用 pgadmin 4。我有一张表,其中记录了国际和国内地址,国际地址有 4 列,国内地址有 4 列(国家、州、城市、邮政编码)。我想将国际数据与国内数据结合起来,以便所有地址数据都位于同一列中。方法是将所有国际邮政编码复制到美国邮政编码列中。我尝试了以下 SQL 语句和其他一些语句,但没有成功。

UPDATE data_table
SET intl_postal_code = usa_zip 
WHERE usa_zip IS NULL

上述方法没有任何效果。其他变体导致了一些数据复制,但删除了许多行。

我也尝试使用 concat:

SELECT concat(usa_zip, intl_postal_code);

这也不起作用,返回一个错误,说这些列不存在,但实际上它们确实存在。

答案1

看起来您已经翻转了update语句中的列。如果您想更新美国邮政编码列,它应该位于赋值运算符的左侧:

UPDATE data_table SET usa_zip = intl_postal_code WHERE usa_zip IS NULL

相关内容