我有3个表格,我想更新table1
(列status
),其中包含来自status
的信息(列table2
)。 table1
和table2
之间的链接位于表格table_con
http://www.sqlfiddle.com/#!15/6ce460/4
我考虑过join
并使用join
的结果来更新table1
select t1.status as t1status,t2.status as t2status,t1.p_id as t1pid, t2.x_id as t2xid
from table1 t1
JOIN table_con tc
ON t1.p_id = tc.p_id
JOIN table2 t2
ON t2.x_id = tc.x_id;
join
到目前为止工作,但我不知道如何继续,
并且查询应该在psql中工作。感谢
答案 0 :(得分:5)
在Postgres中,您可以在update
声明中表达联接:
update table1 t1
set ?? = ??
from table_con tc join
table2 t2
on t2.x_id = tc.x_id
where t1.p_id = tc.p_id;
使用您要设置的列和值填写set
列。