共用方式為


REPEAT 語句

適用於:已勾選為是 Databricks SQL 已勾選為是 Databricks Runtime 16.3 和更新版本

重複執行語句清單,直到條件為 true 為止。

這個語句只能在 複合語句中使用。

語法

[ label : ] REPEAT
  { stmt ; } [...]
  UNTIL cond
  END REPEAT [ label ]

參數

  • 標籤

    迴圈的選擇性標籤,該標籤在包含 REPEAT 語句的所有語句標籤中是唯一的。 標籤可以用來 LEAVEITERATE 迴圈。

  • cond

    評估為 BOOLEAN 的任何表達式

  • stmt

    SQL 語句

例子

-- sum up all odd numbers from 1 through 10
> BEGIN
    DECLARE sum INT DEFAULT 0;
    DECLARE num INT DEFAULT 0;
    sumNumbers: REPEAT
      SET num = num + 1;
      IF num % 2 = 0 THEN
        ITERATE sumNumbers;
      END IF;
      SET sum = sum + num;
    UNTIL num = 10
    END REPEAT 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