您的位置:首页 > 数据库

SQL实现循环每一行做一定操作。

2015-11-26 15:36 459 查看
select frestkey+CAST(FCodeID AS VARCHAR(12))+FType as fkey,ROW_NUMBER() OVER(ORDER BY fkey) AS rowNumber into #depTemp--建立临时表
from CodeSet

declare @max int--获得最大的rowNumber
select @max=max(rownumber)
from #depTemp

declare @rowNo int
DECLARE @fkey VARCHAR(100)
set @rowNo=1
while @rowNo<=@max--对每一个rowNumber进行循环操作
begin
--这儿对每一行要进行的操作的代码
SELECT @fkey=fkey FROM #depTemp WHERE rowNumber=@rowNo;
UPDATE dbo.CodeSet SET fkey=NEWID()
WHERE frestkey+CAST(FCodeID AS VARCHAR(12))+FType=@fkey
set @rowNo=@rowNo+1
end

drop table #depTemp--清除临时表
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: