Для этого вам может понадобиться OpenRowset .
Select Field0, Field2 From Table
Where Field0 in (
SELECT Field0 FROM OPENROWSET('SQLNCLI',
'Server=SERVERNAME;Trusted_Connection=yes;',
'EXEC StoredProc')
)
Для этого на сервере должны быть включены следующие опции:
sp_configure 'Show Advanced Options', 1
GO
RECONFIGURE
GO
sp_configure 'Ad Hoc Distributed Queries', 1
GO
RECONFIGURE
GO
Если невозможно изменить эти настройки, то другой вариант, как обсуждалось с Мартином в комментариях, - это заполнить временную таблицу.
например,
declare @t table
(
Field0 int,
Field1 varchar(100)
...
)
Insert Into @t
Exec storedProcedure
Select Field0, Field2 From Table
Where Field0 in (
SELECT Field0 FROM @t
)
ВставитьРезультаты хранимой процедуры для временной таблицы. Определение временной таблицы должно точно соответствовать результатам хранимой процедуры.