表数据
select * from t1 ;
![在这里插入图片描述](https://img-blog.csdnimg.cn/d7f00ecd41764d8680f52d67e3c64e83.png#pic_center)
select * from t2;
![在这里插入图片描述](https://img-blog.csdnimg.cn/6906d31a72b54071a6bc7f52850e77c3.png#pic_center)
常见陷阱
UPDATE T1
SET T1.FMONEY = (select T2.FMONEY from t2 where T2.FNAME = T1.FNAME)
执行后T1结果如下
![在这里插入图片描述](https://img-blog.csdnimg.cn/204468185fd145cc980404a35c04ee7f.png#pic_center)
有一行原有值,被更新成空值了。
正确写法:
UPDATE T1
SET T1.FMONEY = (select T2.FMONEY from t2 where T2.FNAME = T1.FNAME)
WHERE EXISTS(SELECT 1 FROM T2 WHERE T2.FNAME = T1.FNAME);
正确结果:
![在这里插入图片描述](https://img-blog.csdnimg.cn/d99b970f79de4963ac44b67261575496.png#pic_center)
本文参数于:https://www.bbsmax.com/A/RnJWPbRR5q/