如何在DB2中用一条SQL语句更新多个表

如何在DB2中用一条SQL语句更新多个表,db2,Db2,伪代码如下: update TABLEA a, TABLEB b set a.addr = 'aaa', b.name = 'bbb' from TABLEA a, TABLEB b where a.id = b.id and a.id = 1 只能更新一个表。因此,您可以将SQL更改为以下内容: UPDATE tableA a SET a.addr = 'aaa' WHERE exists (SELECT b.id FROM tableB b WHERE b

伪代码如下:

update TABLEA a, TABLEB b
set a.addr = 'aaa',
b.name = 'bbb'
from TABLEA a, TABLEB b
where a.id = b.id and a.id = 1

只能更新一个表。因此,您可以将SQL更改为以下内容:

UPDATE tableA a
SET a.addr = 'aaa'
WHERE exists
     (SELECT b.id
      FROM tableB b
      WHERE b.id = a.id)

只能更新一个表。因此,您可以将SQL更改为以下内容:

UPDATE tableA a
SET a.addr = 'aaa'
WHERE exists
     (SELECT b.id
      FROM tableB b
      WHERE b.id = a.id)

传统SQL不支持多表更新;可能需要两条语句,传统SQL不支持多表更新;可能必须有两种说法。