SQL ServerのBREAKコマンドとは?WHILEループを中断する割り込み制御の使い方
SQL ServerのBREAKコマンドは、WHILEループを途中で強制的に抜け出すための制御ステートメントです。ループの終了条件がまだ満たされていない段階でも、指定した条件に基づいてループを即座に中断し、ループのEND以降に記述された次のステートメントへ処理を移したい場合に活用されます。
構文
SQL ServerでBREAKによる割り込み制御を使用するには、以下の構文に従います。
BREAK;
BREAKステートメントには、パラメータや引数は一切存在しません。
注意点:
- BREAKは、WHILEループを早期に終了させる目的で使用します。
- コード内にネストされた(入れ子構造の)WHILEループが存在する場合、BREAKは最も内側にあるWHILEループのみを終了させます。外側のループには影響しません。
使用例
DECLARE @Number INT = 1;
DECLARE @Total INT = 0;
WHILE @Number <= 10
BEGIN
IF @Number = 5
BREAK;
ELSE
SET @Total = @Total + @Number;
SET @Number = @Number + 1;
END
PRINT @Total;
GO
この例では、BREAKステートメントを使用することで、変数@Numberが5に達した時点でWHILEループが終了します。その結果、1から4までの数値だけが加算され、実行結果として「10」が出力されます。
このようにBREAKを使うと、「特定の値に到達したらそれ以上ループを回したくない」といったケースで柔軟に処理を制御できます。ただし、多用するとコードの流れが追いにくくなるため、終了条件はできる限りWHILEの条件式で表現することが推奨されます。
-
SQL ServerのGOTOステートメントとは?基本構文と使い方を解説
GOTOコマンドはシンプルなジャンプ命令で、同一バッチ(関数)内に定義されたラベル位置へ無条件に処理を移すことができるステートメントです。本記事では、SQL ServerにおけるGOTOステートメントの基本的な使い方を詳しく解説します。 構文 SQL ServerのGOTOステートメントは、「GOTOコマンド」と「ラベル」の2つの要素で構成されています。構文は以下の通りです。 GOTOコマンド GOTOキーワードの後に、ジャンプ先となるラベル名を指定します。 GOTO label_name; ラベル ラベル名と、その直後に実行したいステートメントを記述します。 label_name: {
-
【SQL Server入門】WHILEループの使い方|構文・フローチャート・実行例を徹底解説
WHILEループ(WHILE LOOP)は、指定した条件がTRUEを返す限り、コードを繰り返し実行したい場合に使用する制御構文です。この記事では、基本構文と具体的なサンプルコードをもとに、SQL ServerにおけるWHILEループの使い方をわかりやすく解説します。 WHILEループの基本構文 SQL ServerでWHILEループを使用する際は、以下の構文に従います。 WHILE 条件式BEGIN { 条件がTRUEのときに実行される処理 }END; ポイント: 実行回数が事前に確定していない場合に、WHILEループを利用します。 WHILE