SQL Server - FOR でループを行う

SQL Server で for は使用できないため、代わりに while を使用します。

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 の環境が必要です。

検証環境

関連ページ