Du kan använda INSERT ... EXEC
syntax för att infoga data som returneras av den dynamiska SELECT. Naturligtvis skulle du då behöva ta bort INSERT
del från det dynamiska uttalandet.
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