当前位置: 首页 > 图文教程 > 数据库 > MSSQL > 在SQL 2005中实现循环每一行做一定的操作

MSSQL
SQL Server 2005查看文件及文件组的语句
用最简单的步骤备份SQL数据库的文件到本地
在SQL Server数据库中拆分字符串函数
SQL Server数据库维度表和事实表概述
Microsoft SQL Server数据库日志截断
SQL Server 2000 SP4与数据链接池问题
SQL Server游标使用实例
SQL Server 2008:传递表值参数
微软SQL Server 2008令商业智能平民化
将SQL2000数据库升级到SQL2005
在SQL Server2005中进行错误捕捉
动态SQL语句的编程
SQL Server 2008升级报表服务器数据库
在SAN上创建SQL Server群集
SQL查询中的转义序列不对的解决办法
SQL2005一个不起眼但很实用的函数
管理SQL Server数据库和应用元数据
选择SQL Server恢复模型确保正确备份
查看SQL执行计划常用方法
SQL2008增强的集成开发环境

MSSQL 中的 在SQL 2005中实现循环每一行做一定的操作


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 110 ::
收藏到网摘: n/a

如果我们想对一个表的每一行做出比较复杂的操作,大多会想到用游标,本文中,我们将换一种思路,用SQL Server 2005中的新函数ROW_NUMBER()和while循环来对每一行执行操作。详细的示例代码如下:

select Department_No as departmentNo,ROW_NUMBER()

OVER(ORDER BY Department_No) AS rowNumber into

#depTemp--建立临时表

from departments

declare @max int

--用来获得最大的rowNumber

select @max=max(rownumber)

from #depTemp

declare @rowNo int

set @rowNo=1

while @rowNo<=@max

--用来对每一个rowNumber来进行循环操作

begin

--此处对每一行要进行的操作的代码

set @rowNo=@rowNo+1

end

drop table #depTemp--清除临时表