設定重複執行 SQL 陳述式或陳述式區塊的條件。
只要符合指定的條件,就會重複執行這些陳述式。
您可以在迴圈內,利用 BREAK 和 CONTINUE 關鍵字來控制 WHILE 迴圈陳述式的執行情況。
Break:可以無條件的結束 while 語法形成的迴圈(結束迴圈)。
Continue:則會忽略以下的程式而從迴圈的開始處重新執行(開始下一個的迴圈)。
語法
1
2
WHILE Boolean_expression
{ sql_statement | statement_block | BREAK | CONTINUE }
範例
迴圈跑10次
1
2
3
4
5
6
7
declare @i int --宣告變數
set @i = 0 --設定初始值為0
while (@i < 10) --迴圈執行10次(當變數i小於10)
set @i += 1 --執行一次就i+1
--查看i值
select @i --執行結果: 10
範例 (Break、Continue)
1
2
3
4
5
6
7
8
9
10
11
declare @i int = 0 --宣告變數i,初始值設為0
while (@i <= 10) --迴圈從0~10
begin
set @i += 1 --設定i+1
if @i = 2 continue --以下直接不做,跳回到while
if @i = 5 break --直接跳離結束迴圈
select @i --顯示當下的i值 (也可用 print @i 印出)
end
--執行結果:
--134