【发布时间】:2016-06-07 10:49:04
【问题描述】:
有没有人想出如何对 sp_execute_external_script 进行参数化或过滤?例如,我想在带有日期过滤器的 SSRS 报告中使用它。 我找到的解决方案使用临时表,但我想找到一个更简单的解决方案和更可靠的解决方案。 目标是消除对临时表的需要。 代码如下:
Declare @id nvarchar(3)='1'
drop table if exists #TempTable
select * into #TempTable from (
select 0 id,1234 as Col
union
select 1 id, 12
union
select 2 id, 985
) as a1
where id=@id
EXECUTE sp_execute_external_script
@language = N'R',
@script = N'OutputDataSet <- InputDataSet',
@input_data_1 = N'select col from #TempTable'
WITH RESULT SETS((columnName char (11)))
我相信我可以将它放入一个存储过程并使用 id 作为参数,然后将它用于 SSRS。但必须有更简单的方法。我已经尝试过Dynamical sql方式,但它不起作用。有任何想法吗?
【问题讨论】:
标签: r reporting-services sql-server-2016