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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值