- 09/06/2017
- 2 minute de citit
-
- c
- r
- M
- i
- M
-
+7
.
Se aplică la: SQL Server (toate versiunile acceptate) Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics
Stabilește o variabilă locală la valoarea unei expresii.
Pentru atribuirea variabilelor, vă recomandăm să utilizați SET @variabilă_locală în loc de SELECT @variabilă_locală.
Convenții de sintaxă Transact-SQL
Sintaxa
SELECT { @local_variable { = | += | -= | *= | /= | %= | &= | ^= | |= } expression }
Nota
Pentru a vizualiza sintaxa Transact-SQL pentru SQL Server 2014 și versiunile anterioare, consultați Documentația versiunilor anterioare.
Argumente
@variabila_locală
Este o variabilă declarată pentru care urmează să se atribuie o valoare.
{= | += | -= | -= | *= | /= | %= | &= | ^= | | |= }
Asemnați valoarea din dreapta variabilei din stânga.
Operatorul de atribuire compusă:
operator | acțiune | |
---|---|---|
= | Ascrie expresia care urmează, la variabilă. | |
+= | Adaugă și atribuie | |
-.= | Substracție și atribuire | |
*= | Multiplicare și atribuire | |
/= | Divizare și atribuire | |
%= | Modul și atribuire | |
&= | Bitwise AND și se atribuie | |
^= | Bitwise XOR și se atribuie | |
|= | Bitwise OR și se atribuie |
expression
Este orice expresie validă. Aceasta include o subîntrebare scalară.
Observații
SELECT @variabila_locală se utilizează de obicei pentru a returna o singură valoare în variabilă. Cu toate acestea, atunci când expresia este numele unei coloane, ea poate returna mai multe valori. Dacă instrucțiunea SELECT returnează mai multe valori, variabilei i se atribuie ultima valoare returnată.
Dacă instrucțiunea SELECT nu returnează nici un rând, variabila își păstrează valoarea actuală. Dacă expresia este o subinterogare scalară care nu returnează nicio valoare, variabila este setată la NULL.
O singură instrucțiune SELECT poate inițializa mai multe variabile locale.
Nota
O instrucțiune SELECT care conține o atribuire de variabilă nu poate fi utilizată pentru a efectua și operații tipice de recuperare a setului de rezultate.
Exemple
A. Utilizați SELECT @variabila_locală pentru a returna o singură valoare
În exemplul următor, variabilei @var1
i se atribuie ca valoare Generic Name
. Interogarea în tabelul Store
nu returnează niciun rând deoarece valoarea specificată pentru CustomerID
nu există în tabel. Variabila păstrează valoarea Generic Name
.
Iată setul de rezultate.
Company Name ------------------------------ Generic Name
B. Utilizarea SELECT @variabila_locală pentru a returna null
În exemplul următor, se utilizează o subinterogare pentru a atribui o valoare la @var1
. Deoarece valoarea solicitată pentru CustomerID
nu există, subinterogarea nu returnează nicio valoare, iar variabila este setată la .
Iată setul de rezultate.
Company Name ---------------------------- NULL
Vezi și
DECLARE @variabilă_locală (Transact-SQL)
Expresii (Transact-SQL)
Operatori compuși (Transact-SQL)
SELECT (Transact-SQL)
.