4 回答

TA貢獻(xiàn)1891條經(jīng)驗(yàn) 獲得超3個(gè)贊
重新開(kāi)始 WHILE 循環(huán)。在 CONTINUE 關(guān)鍵字之后的任何語(yǔ)句都將被忽略
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
在查詢里面執(zhí)行上面的語(yǔ)句和把注釋去再運(yùn)行對(duì)比就知道了 有continue時(shí)print('test')不會(huì)執(zhí)行

TA貢獻(xiàn)1877條經(jīng)驗(yàn) 獲得超1個(gè)贊
CONTINUE 回到循環(huán)開(kāi)始 / BREAK 跳出循環(huán)。
下面是一個(gè)簡(jiǎn)單的例子:
1> DECLARE
2> @testvalue AS INT;
3> BEGIN
-- 設(shè)置變量初始值 = 0
4> SET @testvalue = 0;
-- 當(dāng)變量小于5 循環(huán)
5> WHILE @testvalue < 5
6> BEGIN
-- 變量遞增
7> SET @testvalue = @testvalue + 1;
-- 如果 變量=2, 那么回到循環(huán)開(kāi)始
8> IF @testvalue = 2
9> BEGIN
10> CONTINUE;
11> END;
-- 如果 變量=4, 那么跳出循環(huán)
12> IF @testvalue = 4
13> BEGIN
14> BREAK;
15> END;
-- 打印變量?jī)?nèi)容
16> PRINT ( @testvalue );
17> END
18> END;
19> go

TA貢獻(xiàn)1805條經(jīng)驗(yàn) 獲得超10個(gè)贊
重新開(kāi)始 WHILE 循環(huán)。在 CONTINUE 關(guān)鍵字之后的任何語(yǔ)句都將被忽略。例如:以下匯總20以內(nèi)能被2整除的整數(shù)。循環(huán)時(shí),如果那個(gè)數(shù)不能被2整除,那么后面的不管語(yǔ)句多少,都不執(zhí)行,直接進(jìn)入下一個(gè)循環(huán)。continue常用來(lái)處理,先要滿足首要條件下,再作進(jìn)一步處理的情況
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

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超4個(gè)贊
CONTINUE 回到循環(huán)開(kāi)始 / BREAK 跳出循環(huán)。
下面是一個(gè)簡(jiǎn)單的例子:
1> DECLARE
2> @testvalue AS INT;
3> BEGIN
-- 設(shè)置變量初始值 = 0
4> SET @testvalue = 0;
-- 當(dāng)變量小于5 循環(huán)
5> WHILE @testvalue < 5
6> BEGIN
-- 變量遞增
7> SET @testvalue = @testvalue + 1;
-- 如果 變量=2, 那么回到循環(huán)開(kāi)始
8> IF @testvalue = 2
9> BEGIN
10> CONTINUE;
11> END;
-- 如果 變量=4, 那么跳出循環(huán)
12> IF @testvalue = 4
13> BEGIN
14> BREAK;
15> END;
-- 打印變量?jī)?nèi)容
16> PRINT ( @testvalue );
17> END
18> END;
19> go
- 4 回答
- 0 關(guān)注
- 455 瀏覽
添加回答
舉報(bào)