リファレンスガイド> TDV SQLスクリプト> SQLスクリプトステートメントリファレンス> LOOP
 
LOOP
LOOPステートメントは、現在のブロックをループするためにSQLスクリプトで使用されます。
構文
[<label>:] LOOP
<statements>
END LOOP [<label>]
 
このサンプルステートメントは永久にループします。終了するには、LEAVEステートメントを使用する必要があります。
備考
ラベルは、ブロックに名前を付けるためのオプションの識別子です。これは、LEAVEおよびITERATEステートメントで使用するためのものです。 LEAVEおよびITERATEを参照してください。
開始ラベルが存在する場合、終了ラベルは必要ありません。開始ラベルが存在しない場合、終了ラベルを付けることは違法です。開始ラベルと終了ラベルの両方が存在する場合は、両方が同じ識別子を持っている必要があります。
<statements>領域には0個以上のステートメントが存在する可能性があります。
この例では、sにpadCharを埋め込み、sの長さが少なくともになるようにします。
PROCEDURE padr(IN a VARCHAR, IN width INTEGER, IN padChar VARCHAR, OUT result VARCHAR)
--pad result with padChar
  SET result = s;
  L-loop:
  LOOP
  IF LENGTH(result) >= width THEN
    LEAVE L_loop;
  END IF;
  SET result = CAST(CONCAT(result, padChar) AS VARCHAR);
  END LOOP;
END