2017-06-04 50 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