• 09/06/2017
  • 2 Minuten zu lesen
    • c
    • r
    • M
    • i
    • M
    • +7

Gilt für: SQL Server (alle unterstützten Versionen) Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics

Setzt eine lokale Variable auf den Wert eines Ausdrucks.

Für die Zuweisung von Variablen wird empfohlen, SET @local_variable anstelle von SELECT @local_variable zu verwenden.

Transact-SQL-Syntaxkonventionen

Syntax

SELECT { @local_variable { = | += | -= | *= | /= | %= | &= | ^= | |= } expression } 

Hinweis

Zur Ansicht der Transact-SQL-Syntax für SQL Server 2014 und früher siehe Dokumentation zu früheren Versionen.

Argumente

@local_variable
Ist eine deklarierte Variable, der ein Wert zugewiesen werden soll.

{= | += | -= | *= | /= | %= | &= | ^= | |= }
Werden Sie den Wert auf der rechten Seite der Variablen auf der linken Seite zuweisen.

Zusammengesetzter Zuweisungsoperator:

Operator Aktion
= Zuweisung des folgenden Ausdrucks an die Variable.
+= Hinzufügen und zuweisen
-= Subtrahieren und zuordnen
*= Multiplizieren und zuordnen
/= Dividieren und zuordnen
%= Modulieren und zuordnen
&= Bitweise UND und zuordnen
^= Bitweise XOR und zuordnen
|= Bitweise ODER und zuordnen

Ausdruck
Ist ein beliebiger gültiger Ausdruck. Dies schließt eine skalare Subquery ein.

Bemerkungen

SELECT @local_variable wird normalerweise verwendet, um einen einzelnen Wert in die Variable zurückzugeben. Wenn expression jedoch der Name einer Spalte ist, können mehrere Werte zurückgegeben werden. Wenn die SELECT-Anweisung mehr als einen Wert zurückgibt, wird der Variable der zuletzt zurückgegebene Wert zugewiesen.

Wenn die SELECT-Anweisung keine Zeilen zurückgibt, behält die Variable ihren aktuellen Wert. Wenn der Ausdruck eine skalare Subquery ist, die keinen Wert zurückgibt, wird die Variable auf NULL gesetzt.

Eine SELECT-Anweisung kann mehrere lokale Variablen initialisieren.

Hinweis

Eine SELECT-Anweisung, die eine Variablenzuweisung enthält, kann nicht verwendet werden, um auch typische Ergebnismengenabrufoperationen durchzuführen.

Beispiele

A. SELECT @local_variable verwenden, um einen einzelnen Wert zurückzugeben

Im folgenden Beispiel wird der Variablen @var1 der Wert Generic Name zugewiesen. Die Abfrage der Tabelle Store gibt keine Zeilen zurück, da der für CustomerID angegebene Wert in der Tabelle nicht vorhanden ist. Die Variable behält den Wert Generic Name.

Hier ist die Ergebnismenge.

Company Name ------------------------------ Generic Name 

B. SELECT @local_variable verwenden, um null zurückzugeben

Im folgenden Beispiel wird eine Unterabfrage verwendet, um @var1 einen Wert zuzuweisen. Da der für CustomerID angeforderte Wert nicht existiert, gibt die Subquery keinen Wert zurück und die Variable wird auf NULL gesetzt.

Hier ist die Ergebnismenge.

Company Name ---------------------------- NULL 

Siehe auch

DECLARE @local_variable (Transact-SQL)
Ausdrücke (Transact-SQL)
Kombinierte Operatoren (Transact-SQL)
SELECT (Transact-SQL)

admin

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

lg