Potresti usare INSERT ... EXEC
sintassi per inserire i dati restituiti dalla SELECT dinamica. Ovviamente, dovresti quindi rimuovere INSERT
parte dalla dichiarazione dinamica.
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