SQL Serverで
・WHILE文で繰り返し処理をする方法
を記載します!
SQL Serverでは
・WHILE文が使用可能
です!
SQL Serverでは
・FOR文は使用不可
です!
SQL ServerのWHILE文の構文
SQL ServerのWHILE文の構文
WHILE 条件
BEGIN
条件を満たしている場合に実行する処理
・・・
・・・
END
SQL ServerのWHILE文の使用例
ここでは例として
・テーブル「employee」のレコード数を取得して
・レコード数の数だけ繰り返し処理を実施
します。
DECLARE
@recordCount DECIMAL(4,0),
@i DECIMAL(4,0)
--テーブル「employee」のレコード数を取得
SET @recordCount = (SELECT COUNT(*) FROM employee)
--カウンタ変数を初期化
SET @i = 1
--レコード数の数だけ繰り返し処理を実施
WHILE @i <=@recordCount
BEGIN
SELECT CONCAT('繰り返し:', @i,'回目')
SET @i = @i +1
END
上記を実行すると、WHILE文で繰り返し処理ができたことを確認できます。
繰り返し条件について
公式サイトに記載がある通り、以下のように
・繰り返し条件にSELECT文が使用可能
です。
参考①
SQL ServerのWHILE文では、
・Break文 ※繰り返し処理から抜ける
・Continue文 ※繰り返し処理をスキップする
が使用できます。
参考②
IF文による条件分岐もできます。
詳細は以下の記事をご確認ください。
参考③
上記に記載した以下の詳細について、公式サイトをご確認ください。
●SQL ServerのWHILE文
●[BEGIN – END]について
●Break文
●Continue文