没有必要使用fetch,改用这样的方法,压力会小很多
declare @id int
set @id = 0
while 1=1
Begin
Select Top 1 @id=ID From 表 Where ID>@id Order By ID
if @@ROWCOUNT=0
break;
//这个地方就可以利用@id来进行后续的操作了
End
但需要注意的是,首先你的ID必须是一个唯一值,其次,那些过滤条件以及排序条件最好加上索引
SQL 游标中 WHILE 替代方法,减少SQL服务器压力
本文转载:CSDN博客