- 09/06/2017
- 2 minutter at læse
-
- c
- r
- M
- i
- M
-
+7
Gælder for: SQL Server (alle understøttede versioner) Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics
Sætter en lokal variabel til værdien af et udtryk.
Ved tildeling af variabler anbefaler vi, at du bruger SET @local_variable i stedet for SELECT @local_variable.
Transact-SQL-syntaks-konventioner
Syntaks
SELECT { @local_variable { = | += | -= | *= | /= | %= | &= | ^= | |= } expression }
Note
For at få vist Transact-SQL-syntaks for SQL Server 2014 og tidligere, skal du se dokumentationen for tidligere versioner.
Argumenter
@lokal_variabel
Er en erklæret variabel, som der skal tildeles en værdi til.
{= | += | -= | *= | /= | %= | &= | ^= | | |= }
Tildeler værdien til højre til variablen til venstre.
Sammensat tildelingsoperator:
operator | handling | |
---|---|---|
= | Tildeler det udtryk, der følger, til variablen. | |
+= | Tilføjer og tildeler | |
-= | Subtraherer og tildeler | |
*= | Multiplicerer og tildeler | |
/= | Dividerer og tildeler | |
%= | Modulerer og tildeler | |
Modulerer og tildeler | ||
&= | Bitwise AND og assign | |
^= | Bitwise XOR og assign | |
|= | Bitwise OR og assign |
udtryk
Er ethvert gyldigt udtryk. Dette omfatter en skalarisk underafspørgsel.
Remarks
SELECT @local_variable bruges typisk til at returnere en enkelt værdi til variablen. Men når udtrykket er navnet på en kolonne, kan det returnere flere værdier. Hvis SELECT-erklæringen returnerer mere end én værdi, tildeles variablen den sidste værdi, der returneres.
Hvis SELECT-erklæringen ikke returnerer nogen rækker, beholder variablen sin nuværende værdi. Hvis udtrykket er en skalarisk underafspørgsel, der ikke returnerer nogen værdi, indstilles variablen til NULL.
Et SELECT-udsagn kan initialisere flere lokale variabler.
Bemærk
Et SELECT-udsagn, der indeholder en variabeltildeling, kan ikke bruges til også at udføre typiske operationer til hentning af resultatsæt.
Eksempler
A. Brug SELECT @local_variable til at returnere en enkelt værdi
I det følgende eksempel er variablen @var1
tildelt Generic Name
som værdi. Forespørgslen mod tabellen Store
returnerer ingen rækker, fordi den værdi, der er angivet for CustomerID
, ikke findes i tabellen. Variablen beholder værdien Generic Name
.
Her er resultatmængden.
Company Name ------------------------------ Generic Name
B. Brug SELECT @local_variable til at returnere null
I det følgende eksempel bruges en underafspørgsel til at tildele en værdi til @var1
. Da den værdi, der anmodes om for CustomerID
, ikke findes, returnerer underafspørgslen ingen værdi, og variablen indstilles til NULL
.
Her er resultatmængden.
Company Name ---------------------------- NULL
Se også
DECLARE @local_variable (Transact-SQL)
Udtryk (Transact-SQL)
Sammensatte operatorer (Transact-SQL)
SELECT (Transact-SQL)