sql >> Databáze >  >> RDS >> Sqlserver

Jak vložit do tabulky proměnnou s dynamickým dotazem?

Toto je jednoduchý minimální příklad. Můžete použít INSERT EXEC tvrzení. Klíčem je mít proměnnou tabulky deklarovanou uvnitř i vně dynamického dotazu. Na konci dynamického dotazu stačí vybrat z proměnné tabulky a vložit resultset do vnější proměnné tabulky:

DECLARE @t TABLE ( id INT ) 

DECLARE @q NVARCHAR(MAX) = 'declare @t table(id int) 
                            insert into @t values(1),(2) 
                            select * from @t'

INSERT INTO @t
EXEC(@q)

SELECT * FROM @t


  1. Propojení php formuláře s databází

  2. Výchozí datum a čas s Ecto &Elixir

  3. MySql vybere dynamické hodnoty řádků jako názvy sloupců

  4. jak vytvořit tabulku dědičnosti v oracle