SQL update


UPDATE A
SET (A1, A2, A3) = (SELECT B1, B2, B3 FROM B WHERE A.ID = B.ID)

update tb2 set (fv2) = (SELECT fv2+fv1 from tb1 where tb2.fid=tb1.fid and fv1>5)
where exists (SELECT fv2+fv1 from tb1 where tb2.fid=tb1.fid and fv1>5)


update tb2 set (fv2) =CASE WHEN  (SELECT fv2+fv1 from  tb1 where tb2.fid=tb1.fid and fv1>5) IS NULL THEN fv2 ELSE (SELECT fv2+fv1 from  tb1 where tb2.fid=tb1.fid and fv1>5) END


根据另一个表的对应记录的某个字段的值,更新一个表的对应记录的某个字段。

tb1
fid       fv1
1         6
2         3
3         4
4         7

tb2
fid       fv2
1         5
3         9
2         2
4         1

希望得到:
tb2
fid       fv2
1         11   (加了6)
3         9     (不加)
2         2     (不加)
4         8    (加了7)


猜你喜欢

转载自gong-10140.iteye.com/blog/1593891