mssql sql高效关联子查询的update 批量更新

/* 使用带关联子查询的Update更新     --1.创建测试表    

create TABLE Table1     (     a varchar(10),     b varchar(10),     c varchar(10),     CONSTRAINT [PK_Table1] PRIMARY KEY CLUSTERED     (     a ASC     )     ) ON [PRIMARY] 

 create TABLE Table2     (     a varchar(10),     c varchar(10),     CONSTRAINT [PK_Table2] PRIMARY KEY CLUSTERED     (     a ASC     )     ) ON [PRIMARY]     GO    

--2.创建测试数据    

Insert into Table1 values('赵','asds',null)    

Insert into Table1 values('钱','asds','100')    

Insert into Table1 values('孙','asds','80')    

Insert into Table1 values('李','asds',null) 

Insert into Table2 values('赵','90')    

Insert into Table2 values('钱','100')    

Insert into Table2 values('孙','80')    

Insert into Table2 values('李','95')    

GO     select * from Table1 

  --3.通过Update方式更新    

Update Table1 set c = (select c from Table2 where a = Table1.a) where c is null     GO 

 --4.显示更新后的结果    

select * from Table1    

GO    

--5.删除测试表    

drop TABLE Table1    

drop TABLE Table2

posted on 2016-01-29 13:41  struggle_beiJing  阅读(2452)  评论(0编辑  收藏  举报

导航