更新表格

时间:2013-08-08 21:21:23

标签: sql postgresql

我有两张桌子:A,B。

这就是我想要做的事情(这显然不是有效的SQL):

UPDATE A a, B b SET a.pic = b.pic WHERE a.my_id = b.my_id

即。当my_id列在表A和B中匹配时,我想将pic列从B复制到A.

这样做的正确方法是什么?

2 个答案:

答案 0 :(得分:1)

正确的postgres查询:

UPDATE A a
SET pic = b.pic
FROM B b
WHERE a.my_id = b.my_id;

答案 1 :(得分:0)

您只是真正更新A(并且您只能在UPDATE语句中更新一个表)

UPDATE A a SET a.pic = ( SELECT b.pic FROM B b WHERE a.my_id = b.my_id)