求sap更新语句,2个关联表中,更新其中一个表的某字段内容。有2个表:warehouse 仓库表, stock 库存表。
warehouse 表中有2个字段: wid, wname; stock表中字段 wid(外键), sname.
同一个仓库,它的库存表的每笔库存记录的sname=wname.
但由于新老数据更新,有一部分数据,同一个仓库,有部分数据的库存数据,仓库名和仓库表中的库存名不同。
现在要更新过来。
我这样写的,错误的。求方法。update stock s, warehouse w
set s.sname = w.wname
where s.wid = w.wid
and s.sname <> w.name;
warehouse 表中有2个字段: wid, wname; stock表中字段 wid(外键), sname.
同一个仓库,它的库存表的每笔库存记录的sname=wname.
但由于新老数据更新,有一部分数据,同一个仓库,有部分数据的库存数据,仓库名和仓库表中的库存名不同。
现在要更新过来。
我这样写的,错误的。求方法。update stock s, warehouse w
set s.sname = w.wname
where s.wid = w.wid
and s.sname <> w.name;
update stock s set s.sname=(select w.wname from warehouse w where s.wid = w.wid
and s.sname <> w.name)--单对单的更新可以加这句
--where exists(select 1 from from warehouse w where s.wid = w.wid
and s.sname <> w.name)