次の方法で共有


LOOP ステートメント

適用対象:チェック済み Databricks SQL チェック済み Databricks Runtime 16.3 以降

ステートメントの一覧の実行を繰り返します。

このステートメントは、 複合ステートメント内でのみ使用できます。

構文

[ label : ] LOOP
  { stmt ; } [...]
  END LOOP [ label ]

パラメーター

  • ラベル

    省略可能な、ループのラベル。これは、LOOP ステートメントが含まれているステートメントのすべてのラベルに対して一意です。 終了ラベルを指定する場合は、先頭ラベルと一致する必要があります。 ラベルは、 ループを終了 または 反復処理 するために使用できます。

  • stmt

    SQL ステートメント

例示

-- sum up all odd numbers from 1 through 10
> BEGIN
    DECLARE sum INT DEFAULT 0;
    DECLARE num INT DEFAULT 0;
    sumNumbers: LOOP
      SET num = num + 1;
      IF num > 10 THEN
        LEAVE sumNumbers;
      END IF;
      IF num % 2 = 0 THEN
        ITERATE sumNumbers;
      END IF;
      SET sum = sum + num;
    END LOOP sumNumbers;
    VALUES (sum);
  END;
 25

-- Compare with the much more efficient relational computation:
> SELECT sum(num) FROM range(1, 10) AS t(num) WHERE num % 2 = 1;
 25