SET¶
Initialisiert den Wert einer -Sitzungsvariablen mit dem Ergebnis eines SQL-Ausdrucks.
- Siehe auch:
Syntax¶
SET <var> = <expr>
SET ( <var> [ , <var> ... ] ) = ( <expr> [ , <expr> ... ] )
Parameter¶
var
Gibt den Bezeichner für die zu initialisierende Variable an.
expr
Gibt den SQL-Ausdruck für die Variable an.
Nutzungshinweise¶
Sie können mehrere Variablen in derselben Anweisung festlegen.
Wenn Sie komplexe Ausdrücke angeben, ist in der Sitzung möglicherweise ein laufendes virtuelles Warehouse erforderlich.
Die Anzahl der Ausdrücke muss mit der Anzahl der zu initialisierenden Variablen übereinstimmen.
Die Größe von Zeichenfolgen- oder Binärwertvariablen ist auf 256 Byte begrenzt.
Der Bezeichner (d. h. Name) einer SQL-Variable ist auf 256 Zeichen begrenzt.
Variablennamen wie
CURRENT
oderPUBLIC
sind für die zukünftige Verwendung durch Snowflake reserviert und können nicht verwendet werden.
Beispiele¶
Diese beiden Beispiele verwenden Konstanten zur Festlegung von Variablen:
SET V1 = 10;
SET V2 = 'example';
In diesem Beispiel werden mehrere Variablen gleichzeitig festgelegt:
SET (V1, V2) = (10, 'example');
In diesem Beispiel wird die Variable auf den Wert eines nicht trivialen Ausdrucks festgelegt, der eine SQL-Abfrage verwendet:
SET id_threshold = (SELECT COUNT(*)/2 FROM table1);
Das folgende Beispiel zeigt das Ergebnis, wenn bei einem SET-Befehl alle Ausdrücke auf der rechten Seite des Zuweisungsoperators ausgewertet werden, bevor der erste Ausdruck auf der linken Seite des Operators festgelegt wird. Beachten Sie, dass der Wert der Variable mit dem Namen max
auf der Grundlage des alten Wertes von min
festgelegt wird, nicht auf der Grundlage des neuen Wertes.
SET (min, max) = (40, 70);
SET (min, max) = (50, 2 * $min);
SELECT $max;
+------+
| $MAX |
|------|
| 80 |
+------+