Можете ли вы установить параметры хранимых процедур из вывода запроса? - PullRequest
1 голос
/ 05 января 2012

У меня есть хранимая процедура, которая генерирует список порядковых номеров продуктов.

exec GenerateSequenceList @Min = 10, @Max = 25, @Prefix = N'Toaster'

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

select min, max, prefix from products where prefix in ('Toaster', 'Ladle', 'Pan')

1 Ответ

4 голосов
/ 05 января 2012

В цикле, да. Один раз на строку, и у вас будет несколько наборов результатов (один сохраненный вывод процесса повторяется за итерацию цикла

Лучший способ - использовать APPLY и udfs, если вы можете переписать, чтобы использовать UDF

select P.prefix , T.* 
from 
   products P
   CROSS APPLY -- or OUTER APPLY maybe
   dbo.SomeUDF (P.min, P.max, P.prefix) T
where 
   P.prefix in ('Toaster', 'Ladle', 'Pan')

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...