2016-09-22 4 views
1

У меня есть хранимая процедура в SQL Server, который выполняет как этотSQL Server - добавить столбец результата хранимой процедуры

EXEC @return_value = SP 
     @value1 = 'A', 
     @value2 = 'B' 

и результат:

value3 | value 4 | value 5 

мне нужно добавьте столбцы value1 и value2 в результат (да, то же самое я использую для выполнения хранимой процедуры). Невозможно изменить хранимую процедуру, потому что это из другого проекта. Можно ли это сделать?

Я часто работаю с Oracle, поэтому я не знаю, может быть, это что-то простое, или, может быть, это невозможно.

Спасибо за ваши ответы!

+0

* Почему вы хотите добавить два статических значения? Какую * актуальную проблему вы пытаетесь решить? Это похоже на то, что вы пытаетесь сделать отчетную работу на сервере, например, прикреплять ярлыки. Или что вы использовали хранимую процедуру, когда вам действительно захотелось представление или функция –

+0

, потому что одно из значений - это дата, и мне нужно знать дату для остальных значений. Очевидно, что это должен быть один из результатов SP, но поскольку я не могу его изменить и в необходимости знать все значения за год, я не хочу его исполнять 365 раз. –

ответ

1

Храните результаты Proc в таблице темп.

https://stackoverflow.com/a/1228165/6167855

Затем сделать что-то вроде

SELECT @value1, @value2, t.* FROM #TempTable t 
+0

Я делаю что-то похожее, но я забыл указать, что я использую Sql Server 2000, поэтому я не могу этого сделать (поддерживается с SQL Server 2008). –

+0

О, черт возьми, @AlanBry. Вы действительно должны обновиться с 2000 года, но не поддерживались с апреля 2013 года. – scsimon

0

с амбулаторными изменения хранимая процедура, один из способов, чтобы получить желаемый результат

select *, 
@value1, 
@value2 
from openrowset 
('SQLNCLI', 
'Server=yourinstancename; 
Trusted_Connection=yes;', 
'EXEC yourproc ''variables''') 

Обратите внимание, если вы получите два набора результатов, второй будет проигнорирован

+0

«Доступ к удаленному серверу запрещен, потому что не существует сопоставления с именем», это выглядит хорошо, но ... –

+0

@AlanBry: эта ссылка, похоже, обеспечивает разрешение ..https: //blogs.technet.microsoft.com/mdegre/2011/03/10/access-to-the-remote-server-is-denied-because-no-login-mapping-exists/ – TheGameiswar

Смежные вопросы