我有一个名为poi的postgres表,如下所示:
TABLE1 :
gz_id| rt_id | gz_name | rt_name | gz_acc | rt_acc
23 sabah 414
TABLE2 :
rt_id | rt_name | rt_acc
44 sabah_101 414
如何更新表1以达到如下结果?
TABLE1 :
gz_id| rt_id | gz_name | rt_name | gz_acc | rt_acc
23 44 sabah sabah_101 414 414
我尝试使用如下更新,但它不起作用。它使用相同的值更新所有其他行。
尝试下面的查询,没有工作:
查询:
Update table 1
set t1.rt_id = t2.rt_id,
set t1.rt_name = t2.rt_name,
set t1.rt_acc = t2.rt_acc
from t2
where t1.rt_acc = t2.rt_acc
答案 0 :(得分:0)
尝试
UPDATE table1
SET rt_id = table2.rt_id,
rt_name = table2.rt_name,
rt_acc = table2.rt_acc
FROM table2
WHERE gz_acc = table2.rt_acc;