更新一个表要用到另外一个表的字段,要怎么写sql

如题所述

有两个表A和B,均有key和value两个字段,如果B的key在A中也有,就把B的value换为A中对应的value
update b set b.value=(select a.value from a where a.key=b.key) where b.id in(select b.id from b,a where b.key=a.key);
但是如果没有ID字段:
update b set b.value=(select a.value from a where a.key=b.key) where b.key in(select b.key from b,a where b.key=a.key);
温馨提示:内容为网友见解,仅供参考
第1个回答  2019-12-23
假设A,B表,要吧表B的字段B更新到表A的字段A,通过ID关联,代码如下:
UPDATE a SET a.字段A=(SELECT 字段B FROM 表B WHERE b.ID=A.ID) FROM 表A a
第2个回答  2015-11-16
update a set a.t1 = b.t1 from a,b where a.t2=b.t2
相似回答