Update是T-sql中再简单不过的语句了,update table set column=expression [where condition],我们都会用到。但update的用法不仅于此,真正在开发的时候,灵活恰当地使用update可以达到事半功倍的效果。
假定有表Table1(a,b,c)和Table2(a,c),现在Table1中有些记录字段c为null,要根据字段a在Table2中查找,取出字段a相等的字段c的值来更新Table1。
通过Update方式更新
Update Table1 set c = (select c from Table2 where a = Table1.a) where c is null
怎么实现
修改 b表中的值,改为a表对应的值
b表
homeid |
xz |
xzqh |
a表
homeid |
xz |
xzqh |
条件a.homeid=b.homeid
需要修改 b.xz=a.xz b.xzqh=a.xzqh 使用update set from 解决: update sicklist set sicklist.xz=a.xz,sicklist.xzqh=a.xzqh from family a where sicklist.homeid=a.homeid update b SET xz=a.xz , xzqh=a.xzqh from sicklist b join family a on a.homeid=b.homeid update sicklist SET sicklist.xz=a.xz ,sicklist.xzqh=a.xzqh from sicklist join family a on a.homeid=sicklist.homeid update t1 set t1.xx=t2.xx from t1,t2 where t1.id=t2.id