Condividi tramite


Istruzione WHILE

Si applica a:contrassegnato sì Databricks SQL contrassegnato sì Databricks Runtime 16.3 e versioni successive

Importante

Questa funzionalità è disponibile in anteprima pubblica.

Ripetere l'esecuzione di una lista di istruzioni mentre una condizione è vera.

Questa istruzione può essere usata solo all'interno di un'istruzione composta .

Sintassi

[ label : ] WHILE cond DO
  { stmt ; } [...]
  END WHILE [ label ]

Parametri

  • etichetta

    Etichetta facoltativa per il ciclo, che è unica tra tutte le etichette per le istruzioni entro cui è contenuta l'istruzione WHILE. L'etichetta può essere usata per lasciare oscorrere il ciclo.

  • cond

    Qualsiasi espressione che valuta un BOOLEAN

  • stmt

    Istruzione SQL

Esempi

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