Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Insertion dynamique dans l'instruction de table de variables SQL Server

Vous pouvez utiliser le INSERT ... EXEC syntaxe pour insérer les données renvoyées par le SELECT dynamique. Bien sûr, vous devrez alors supprimer le INSERT partie de l'instruction dynamique.

WHILE (@i <= 100) BEGIN         
  SELECT @other_att  = NAME  FROM @other_Table where ID =  @i;
  SET @sql = 'SELECT '+CAST(@i AS VARCHAR)+' , ''' + @other_att+''', SUM('+ @other_att + ') FROM '+ @EVEN_OTHER_Table;
  INSERT INTO @A_Table (ID,att1,att2)
    EXEC (@sql);
END