sql >> Database teknologi >  >> RDS >> Sqlserver

sæt en variabel med en returværdi af en forespørgsel

Hvis forespørgslen returnerer et skalært resultatsæt, skal du gøre

DECLARE @VAR INT

DECLARE @Result TABLE
(
C INT
)

DECLARE @SQl NVARCHAR(MAX)
SET @SQl = 'SELECT 1'

INSERT INTO @Result
EXEC(@SQl)

SELECT @VAR = C FROM @Result

Meget bedre at bruge sp_executesql og OUTPUT parametre

DECLARE @VAR INT

DECLARE @SQl NVARCHAR(MAX)
SET @SQl = 'SELECT @out = 1'

EXEC sp_executesql @SQl, N'@out int output', @out = @VAR OUTPUT

SELECT @VAR 



  1. Typer i MySQL:BigInt(20) vs Int(20)

  2. Sammenligning af Cloud Database-indstillinger for PostgreSQL

  3. Sådan tilføjer du et sidehoved og en sidefod til en formular i Microsoft Access

  4. cx_Oracle Connection Timeout