0

私のpostgresqlテーブルには(cityname)列があります。(cityname)列の値にいくつかのスペルミスがあります。列(cityname)のすべてのレコードを修正する必要があります。別のテーブルには、すべての正しい都市名を含む列があります。この表に基づいて、最初の表のスペルミスを修正する必要があります。

4

1 に答える 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 を 2 回参照します。これを行う正当な理由はありませんが、結合からデータをプルする必要がある場合、更新中にこれが最も簡単な方法であることがわかりました。

コメント後に編集: 修正が必要なデータ (city_id など) に正しいデータを関連付ける良い方法がないため、結合条件に取り組み、おそらく正規表現を導入する必要があります。ここにリンクがありますが、これは役に立つかもしれません

于 2013-03-21T06:14:39.040 に答える