首页 > 其他 > 详细

游标的使用

时间:2019-12-25 23:12:13      阅读:96      评论:0      收藏:0      [点我收藏+]

要将查询出来的结果集转换成按cc字段依次递增的格式并打印,如下图

 

技术分享图片

 

思路:使用游标对作图的结果集进行遍历,通过cc字段的数量来决定当前行的循环次数,每次递增加1,如当前行cc是7,则打印0001~0007的数据

在循环中拼接字段 和加空格等方式达到预期的格式。

 

附带sql语句

drop table #t
select code ,sum(isnull([count],0)) cc into #t from [dbo].[datareport] group by code

DECLARE @code varchar(20),@cc int,@ii int
DECLARE cursor_name CURSOR FOR --定义游标
SELECT code,cc FROM #t where code is not null

OPEN cursor_name --打开游标
FETCH NEXT FROM cursor_name INTO @code,@cc --抓取下一行游标数据
WHILE @@FETCH_STATUS = 0
BEGIN
set @ii=0
while(@ii<@cc)
begin
set @ii=@ii+1
PRINT left(@code,2)+‘ ‘+right(@code,3)+‘ ‘+right(‘0000‘+cast(@ii as varchar(4)),4)
end
FETCH NEXT FROM cursor_name INTO @code,@cc --抓取下一行游标数据
END
CLOSE cursor_name --关闭游标
DEALLOCATE cursor_name --释放游标

游标的使用

原文:https://www.cnblogs.com/clsl/p/12099240.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!