加入收藏 | 设为首页 | 会员中心 | 我要投稿 银川站长网 (https://www.0951zz.com/)- 云通信、基础存储、云上网络、机器学习、视觉智能!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

SQL怎样遍历数据行

发布时间:2023-04-15 13:00:33 所属栏目:MySql教程 来源:
导读:本篇内容介绍了“SQL如何遍历数据行”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!代码如下:-

本篇内容介绍了“SQL如何遍历数据行”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

代码如下:

--非游游标方式遍历记录时,记录需要有ID列

declare @i int   --循环开始索引

declare @max int --循环结束索引

set @i=1 --从第1条记录开始

--总记录数量

select @max=COUNT(name) from sys.databases where name like 'WHQJ%'  

--要遍历的记录插入到临时表

select  database_id as id,name into #tmp from sys.databases where name like 'WHQJ%' 

declare @str nvarchar(200)

begin

   while @i<@max

         begin

          set @str =  'select top 1 name from #tmp where id not in(select top '+STR(@i)+' id from #tmp)' 

         print @str

          print @i;

            exec(@str)    --执行查询

         set @i=@i+1; --索引自增1

         continue;

       end

end

drop table #tmp

GO

--通过游标方式遍历没有ID列的数据行

declare @db_name nvarchar(50)

declare tmpCur cursor for select name from sys.databases where name like 'WHQJ%' --声明游戏语句

open tmpCur --打开游标

fetch next from tmpCur into @db_name --取1条记录

--遍历

while @@FETCH_STATUS=0

   begin

      print @db_name --打印取出的值

      fetch next from tmpCur into @db_name --取下1条记录

   end

close tmpCur --关闭游标

deallocate tmpCur --释放游标

GO

“SQL如何遍历数据行”的内容就介绍到这里了,感谢大家的阅读。

(编辑:银川站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!