批量更新大量数据的表的时候,会锁表,影响网站正常访问.
我们可以按下面思路,分批更新,就不会影响网站正常运作了
declare @allCount int=0 ;
declare @updateCount int=0;
set rowcount 10000;
set @updateCount=1;
while(@updateCount>0)
begin
set @updateCount=0;
update a set a.LastConsumeTime=f.CREATE_TIME
from table1 a, table2 f
where a.ID=f.id and a.LastConsumeTime is null ;
set @updateCount=@@ROWCOUNT;
waitfor delay'00:00:01'
end