Как добавить подмножество полей из хранимой процедуры в табличную переменную?
Declare @tempTableVariable Table(
email varchar(50)
)
Insert INTO @tempTableVariable
EXEC GetData
select email
from @tempTableVariable
Я получаю следующую ошибку: "Имя столбца или количество предоставленных значений не соответствует определению таблицы".
Есть ли простой способ получить подмножество из GetData без явного объявления всех полей в объявлении табличной переменной?
1 ответ
Если у вас нет контроля над GetData
хранимая процедура, я не думаю, что есть какой-то способ обойти, объявляя все поля в вашей табличной переменной.
Если вы можете контролировать GetData
Вы можете добавить к нему параметр, который при значении 1 будет возвращать результаты так, как вы хотите, а в противном случае будет делать то же, что и в настоящее время.
Я упомяну это для полноты картины, но кроме INSERT EXEC есть много других опций. http://www.sommarskog.se/share_data.html - отличное объяснение вариантов.