2017-06-04 49 views
0

我无法弄清楚如何在Postgres中执行此操作。从Postgres中的其他表中加入返回ID的更新

我有两个表,foobar

foo:身份证,号码

bar:ID,foo_id

有一个在foo对应于bar条目和条目。我想更新foo并在返回时输入bar。我虽然这样的事情会工作,但我有一个非常困难的时间获取联接更新在Postgres工作。

我想要做这样的事情:

UPDATE 
    foo f 
INNER JOIN 
    bar b 
ON 
    f.id = b.foo_id 
SET 
    f.number = 1 
RETURNING 
    b.id 

感谢。

回答

1

你的语法是关闭的,试试这个来代替:

UPDATE foo AS f 
SET number = 1 
FROM bar AS b 
WHERE f.id = b.foo_id 
RETURNING b.id 

有许多文献在那里这可能表明你如何短语更新Postgres里,Stack Overflow being one of them加入。

+0

非常感谢! – 1N5818