Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
文リストの実行を繰り返します。
[ statement-label : ] [ WHILE search-condition ] LOOP statement-list END LOOP [ statement-label ]
WHILE と LOOP 文は制御文です。これを使って、search-condition が TRUE と評価するかぎり、SQL 文のリストを繰り返し実行できます。LEAVE 文を使って、END LOOP の後に記述されている最初の文から実行を再開できます。
終了の statement-label を指定する場合は、開始の statement-label と一致させます。
なし
SQL/2008 LOOP/END LOOP 文は、オプションの SQL/2008 言語機能 P002、"Computational completeness" の一部です。SQL/2008 では、WHILE DO/END WHILE 文は、言語機能 P002 の一部でもある別個の文です。SQL Anywhere でサポートされている構文の組み合わせ WHILE search-condition LOOP はベンダー拡張です。
Transact-SQL LOOP は Transact-SQL ダイアレクトではサポートされていません。Transact-SQL ストアドプロシージャー内でのループは Transact-SQL WHILE 文で実行されます。
プロシージャー内の While ループの例
... SET i = 1; WHILE i <= 10 LOOP INSERT INTO Counters( number ) VALUES ( i ); SET i = i + 1; END LOOP; ...
プロシージャー内の指定されたラベルのループの例
SET i = 1; lbl: LOOP INSERT INTO Counters( number ) VALUES ( i ); IF i >= 10 THEN LEAVE lbl; END IF; SET i = i + 1; END LOOP lbl