SQLServerのストアドプロシージャでのループ処理の書き方です。
構文
- (構文)
- WHILE <条件> BEGIN <LOOP処理> END
WHILEの条件がTRUEの間、LOOP処理を繰り返します。
サンプルソース
例)5回ループ処理を行う
1 2 3 4 5 6 7 8 |
DECLARE @i int = 0 WHILE @i < 5 BEGIN SELECT @i SET @i = @i + 1 END |
例)ループ中に@iが3だったら強制的に抜ける
1 2 3 4 5 6 7 8 9 10 11 12 13 |
DECLARE @i int = 0 WHILE @i < 5 BEGIN SELECT @i IF @i = 3 BEGIN BREAK END SET @i = @i + 1 END |
LOOPを抜けるにはBREAKを使用します。
備考
- 無限ループにならないようにご注意ください。