我的 postgresql 表有一个 (cityname) 列。(cityname) 列中的值有一些拼写错误。需要更正列(城市名称)的每条记录。另一个表有一列包含所有正确的城市名称。根据此表,需要更正第一个表的拼写错误。
问问题
1221 次
1 回答
0
您需要一列可以将表 A 中的行(有错误)与表 B 中的正确数据相关联。让我们假设您有完成这项工作的 city_id 列。
update table_A
set add1 = table_b.correct_add1
from table_A as j_table_A
join table_B on table_B.city_id = table_A.city_id
where j_table_A.primary_key_column = table_A.primary_key_column
你基本上引用了 table_A 两次。这样做没有充分的理由,但我发现如果您需要从联接中提取数据,那么在更新期间这是最简单的方法。
评论后编辑:由于您没有将正确数据与需要修复的数据(如 city_id)相关联的好方法,因此您需要处理您的连接条件并可能引入正则表达式。这里有一个链接可能有用
于 2013-03-21T06:14:39.040 回答