LET (Snowflake Scripting)

Weist einen Ausdruck einer Variablen, einem Cursor oder einem RESULTSET in Snowflake Scripting zu.

Weitere Informationen zu Variablen, Cursorn und RESULTSETs finden Sie unter:

Bemerkung

Dieses Snowflake Scripting-Konstrukt ist nur innerhalb eines Snowflake Scripting-Blocks gültig.

Siehe auch::

DECLARE

Syntax

LET { <variable_assignment> | <cursor_assignment> | <resultset_assignment> }
Copy

Die Syntax jedes Zuweisungstyps wird im Folgenden genauer beschrieben.

Syntax der Variablenzuweisung

Verwenden Sie die folgende Syntax, um einen Ausdruck einer Variablen zuzuweisen.

LET <variable_name> <type> { DEFAULT | := } <expression> ;

LET <variable_name> { DEFAULT | := } <expression> ;
Copy

Wobei:

variable_name

Der Name der Variablen. Der Name muss den Benennungsregeln für Objektbezeichner entsprechen.

type

SQL-Datentyp

DEFAULT expression oder . := expression

Weist der Variablen den Wert von expression zu.

Wenn sowohl type als auch expression angegeben sind, muss der Ausdruck den passenden Datentyp ergeben.

Die folgenden LET-Anweisungen deklarieren zum Beispiel drei Variablen vom Typ NUMBER, wobei die Genauigkeit auf 38 und die Skalierung auf 2 gesetzt ist. Alle drei Variablen haben einen Standardwert, den Sie entweder mit DEFAULT oder := angeben können.

BEGIN
  ...
  LET profit NUMBER(38, 2) DEFAULT 0.0;
  LET revenue NUMBER(38, 2) DEFAULT 110.0;
  LET cost NUMBER(38, 2) := 100.0;
  ...
Copy

Weitere Beispiele finden Sie unter:

Syntax der Cursorzuweisung

Verwenden Sie eine der folgenden Syntax-Varianten, um einem Cursor einen Ausdruck zuzuweisen.

LET <cursor_name> CURSOR FOR <query> ;
Copy
LET <cursor_name> CURSOR FOR <resultset_name> ;
Copy

Wobei:

cursor_name

Der Name, den der Cursor erhalten soll. Dies kann ein beliebiger gültiger Snowflake Bezeichner sein, der in diesem Block noch nicht verwendet wird. Der Bezeichner wird von anderen Cursor-bezogenen Befehlen verwendet, z. B. FETCH (Snowflake Scripting).

query

Die Abfrage, die das Resultset definiert, über das der Cursor iteriert.

Dies kann fast jede gültige SELECT-Anweisung sein.

resultset_name

Der Name des RESULTSET, das durchlaufen werden soll.

Die folgende LET-Anweisung deklariert beispielsweise den Cursor c1 für eine Abfrage:

BEGIN
  ...
  LET c1 CURSOR FOR SELECT price FROM invoices;
  ...
Copy

Weitere Beispiele finden Sie unter Verwenden von Cursors.

Syntax der RESULTSET-Zuweisung

Verwenden Sie die folgende Syntax, um einen Ausdruck einem RESULTSET zuzuweisen.

<resultset_name> := ( <query> ) ;
Copy

Wobei:

resultset_name

Der Name, den das RESULTSET erhalten soll.

Der Name muss innerhalb des aktuellen Sichtbarkeitsbereichs eindeutig sein.

Der Name muss den Snowflake-Regeln für Bezeichner folgen (siehe unter Objektbezeichner).

DEFAULT query oder . := query

Weist dem RESULTSET den Wert von query zu.

Die folgende LET-Anweisung deklariert beispielsweise das RESULTSET res für eine Abfrage:

BEGIN
  ...
  LET res RESULTSET := (SELECT price FROM invoices);
  ...
Copy

Weitere Beispiele finden Sie unter Verwenden von RESULTSETs.