sql server中continue怎么用
3个回答
展开全部
重新开始 WHILE 循环。在 CONTINUE 关键字之后的任何语句都将被忽略。例如:以下汇总20以内能被2整除的整数。循环时,如果那个数不能被2整除,那么后面的不管语句多少,都不执行,直接进入下一个循环。continue常用来处理,先要满足首要条件下,再作进一步处理的情况
declare @a int,
@i int,
@sum int
set @i=0
set @a=20
set @sum=0
while @i<@a
begin
set @i=@i+1
if @i % 2<>0
continue
else
begin
print @i
set @sum=@sum+@i
end
end
print @sum
declare @a int,
@i int,
@sum int
set @i=0
set @a=20
set @sum=0
while @i<@a
begin
set @i=@i+1
if @i % 2<>0
continue
else
begin
print @i
set @sum=@sum+@i
end
end
print @sum
展开全部
重新开始 WHILE 循环。在 CONTINUE 关键字之后的任何语句都将被忽略
declare @a int,@b int
SELECT @a = 1,@b =34
while @a < 10
begin
SELECT @b = @b +1
print('a='+ convert(varchar(10),@a) + ',b=' + convert(varchar(10),@b))
SELECT @a = @a + 1
/*
if @b > 38
break
else
continue
*/
print('test')
end
在查询里面执行上面的语句和把注释去再运行对比就知道了 有continue时print('test')不会执行
declare @a int,@b int
SELECT @a = 1,@b =34
while @a < 10
begin
SELECT @b = @b +1
print('a='+ convert(varchar(10),@a) + ',b=' + convert(varchar(10),@b))
SELECT @a = @a + 1
/*
if @b > 38
break
else
continue
*/
print('test')
end
在查询里面执行上面的语句和把注释去再运行对比就知道了 有continue时print('test')不会执行
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
CONTINUE 回到循环开始 / BREAK 跳出循环。
下面是一个简单的例子:
1> DECLARE
2> @testvalue AS INT;
3> BEGIN
-- 设置变量初始值 = 0
4> SET @testvalue = 0;
-- 当变量小于5 循环
5> WHILE @testvalue < 5
6> BEGIN
-- 变量递增
7> SET @testvalue = @testvalue + 1;
-- 如果 变量=2, 那么回到循环开始
8> IF @testvalue = 2
9> BEGIN
10> CONTINUE;
11> END;
-- 如果 变量=4, 那么跳出循环
12> IF @testvalue = 4
13> BEGIN
14> BREAK;
15> END;
-- 打印变量内容
16> PRINT ( @testvalue );
17> END
18> END;
19> go
1
3
下面是一个简单的例子:
1> DECLARE
2> @testvalue AS INT;
3> BEGIN
-- 设置变量初始值 = 0
4> SET @testvalue = 0;
-- 当变量小于5 循环
5> WHILE @testvalue < 5
6> BEGIN
-- 变量递增
7> SET @testvalue = @testvalue + 1;
-- 如果 变量=2, 那么回到循环开始
8> IF @testvalue = 2
9> BEGIN
10> CONTINUE;
11> END;
-- 如果 变量=4, 那么跳出循环
12> IF @testvalue = 4
13> BEGIN
14> BREAK;
15> END;
-- 打印变量内容
16> PRINT ( @testvalue );
17> END
18> END;
19> go
1
3
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询