sql中while语句多层循环实例

while语句是SQL中最常见的循环语句之一,下面就将为您介绍sql中while语句多层循环的实例,供您参考,希望对您学习SQL中的循环语句能够有所帮助。

DECLARE @Name nvarchar(20);
DECLARE @Type varchar(20);
DECLARE @Count int ;
DECLARE @IsCommend bit ;
DECLARE @IsStatic bit ;
set @Name ='asp,php,asp.net,jsp'
set @Type ='asp,php,asp.net,jsp'
set @Count =0
set @IsCommend ='false'
set @IsStatic ='true'
DECLARE @Names nvarchar(500);
DECLARE @Types nvarchar(100);
DECLARE @t1 nvarchar(10);
DECLARE @n1 nvarchar(10);
    set @Names = @Name+ ','
    set @Types = @Type+ ','
declare @i int;
set @i=0
BEGIN TRY
   --BEGIN TRAN
      while CHARINDEX(',',@Types)>0
        begin
          SELECT @t1=LEFT(@Types,CHARINDEX(',',@Types+',')-1),@Types=STUFF(@Types,1,CHARINDEX(',',@Types+','),'')
          while CHARINDEX(',',@Names)>0
            begin    
              SELECT @n1=LEFT(@Names,CHARINDEX(',',@Names+',')-1),@Names=STUFF(@Names,1,CHARINDEX(',',@Names+','),'')
           INSERT INTO W_Keyword ([Name], [Type], [Count], IsCommend, IsStatic,EditDate)
           VALUES (@n1,@t1, @Count, @IsCommend, @IsStatic,GetDate())
            end
           set @Names = @Name+ ','
        end
    --COMMIT TRAN
END TRY
BEGIN CATCH
ROLLBACK TRAN
DECLARE @MESSAGE NVARCHAR(4000)
SELECT @MESSAGE = ERROR_MESSAGE()
RAISERROR(@MESSAGE, 16, 1)
END CATCH

当前标题:sql中while语句多层循环实例
本文地址:http://www.shufengxianlan.com/qtweb/news0/330950.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联