SQL Server - WHILEによるループ(T-SQL)

WHILEのあとにループ継続条件を指定し、繰り返し実行したいコードを BEGIN - END ブロックで囲みます。

WHILE の使い方

WHILE *ループ継続条件*
BEGIN
    *繰り返し実行したいコード*
END

サンプルコード

10回ループ
--変数宣言
DECLARE @index INTEGER

--ループ用変数を初期化
SET @index = 0

WHILE @index < 10
BEGIN
    --ループ用変数をインクリメント
    SET @index = @index + 1

    PRINT @index
END
10回ループ(BREAKでループを抜けるパターン)
--変数宣言
DECLARE @index INTEGER

--ループ用変数を初期化
SET @index = 0

WHILE 1=1
BEGIN
    --ループ用変数をインクリメント
    SET @index = @index + 1

    IF @index > 10
    BEGIN
        --ループ終了
        BREAK
    END

    PRINT @index
END
SQL Server Management Studioで実行した結果
SQL Server Management Studioで実行した結果
Azure Data Studioで実行した結果
Azure Data Studioで実行した結果

サンプルコードのダウンロード

サンプルコードの実行には SQL Server Express または SQL Server の環境が必要です。

検証環境

関連ページ