Простой способ объединить значения в список и передать его в sp.
В sp используйте dbo.Split udf для преобразования обратно в набор результатов (таблица).
Создать эту функцию:
CREATE FUNCTION dbo.Split(@String nvarchar(4000), @Delimiter char(1))
returns @Results TABLE (Items nvarchar(4000))
as
begin
declare @index int
declare @slice nvarchar(4000)
select @index = 1
if @String is null return
while @index != 0
begin
select @index = charindex(@Delimiter,@String)
if @index !=0
select @slice = left(@String,@index - 1)
else
select @slice = @String
insert into @Results(Items) values(@slice)
select @String = right(@String,len(@String) - @index)
if len(@String) = 0 break
end return
end
, а затем попробуйте:
select * from dbo.split('a,b,c,d,e,f,g,h,i,j,k,l', ',')