我正在使用postgres作为数据库,并且有2个表
accounts
id | name | status
accountOwner
account_id | user_id
我有user_id(accountOwner表)和status(帐户表)要根据我拥有的accountid更新。是否可以在1个查询中更新两个表?我尝试了以下
UPDATE accounts,accountOwner SET accounts.status='active', accountOwner.user_id=3 WHERE accounts.id=accountOwner.account_id AND accountOwner.account_id = 1;
最佳答案
不,您不能一次更新两个表。 The documentation说:
UPDATE-更新表的行
但是,可以使用FROM子句,例如:
UPDATE accounts SET status = 'active'
FROM accountOwners
WHERE accounts.id = accountOwners.account_id
AND accountOwners.account_id = 1;