Как вставить результаты хранимой процедуры во временную таблицу в SQL server
Я хочу получить данные из таблиц для указанных пользователем столбцов.
Что я уже пробовал:
--образец таблицы
Создать таблицу #tbEmployeeMaster (Кодсотрудника int удостоверение(1,1), EmployeeName тип varchar(100), отчество тип varchar(100), MotherName тип varchar(100), возраст ИНТ)
Вставить в #tbEmployeeMaster (EmployeeName ,отчество , MotherName, возраст) значения ('Аман', 'Роман', 'Анита', 22)
Вставить в #tbEmployeeMaster (EmployeeName ,отчество , MotherName, возраст) значения ('Сунил', 'Сандип', 'входить', 22)
DECLARE @SelectedColumns VARCHAR(500)='EmployeeName,возраст';
--Примечание: пользователь может выбрать вышеуказанные столбцы в любом порядке,например возраст, имя сотрудника
--Я попробовал динамический sql следующим образом.
ОБЪЯВИТЬ @SQL VARCHAR(2000)
Набор @среда SQL = "выбрать" + @SelectedColumns + 'с #tbEmployeeMaster'
EXEC(@SQL) -это работает
--Я хочу вставить данные во временную таблицу, используя синтаксис ниже, чтобы я мог использовать их дальше.Но это не сработало. Я знаю, что переменная таблицы не может быть использована здесь, потому что мы не знаем порядок столбцов.
Выберите * в #tbEmp EXEC(@SQL)
PIEBALDconsult
ВСТАВЛЯТЬ... Казнить ... ?