Мне нужно получить доступ к результату хранимой процедуры в операторе выбора, т. Е.
SELECT * FROM [dbo].[sp_sample]
в SQL_Server 2005.
Это невозможно. Вам нужно создать временную таблицу для хранения результатов.
Create Table #tmp ( ... ) Insert into #tmp Exec dbo.StoredProcedure
Структура таблицы должна соответствовать выводу хранимой процедуры.
@ Барри прав вам нужно создать временную таблицу и сначала вставить в нее, а затем присоединиться к этой таблице по вашему выбору.
Однако существует множество способов обмена данными междухранимые процедуры, см. эту превосходную статью: Как обмениваться данными между хранимыми процедурами от Erland Sommarskog
Один из методов, который может вам помочь, - это «поделиться» временной таблицей.Таблица #temp создается в процедуре Parent и может использоваться дочерним элементом: http://www.sommarskog.se/share_data.html#temptables