我正在尝试执行一份SSRS 2005报告。此报告采用一个参数。 如果我不使用参数并直接写入值,那么它将在10秒内运行。例如
Select * from table1 where id = 122
如果我使用参数,则需要很长时间,如10到15分钟,如
Select * from table1 where id = @id
我不知道为什么会发生这件事。
提前致谢。
答案 0 :(得分:0)
根据要求回答问题是不可能的:只有你有信息来确定事情表现不佳的原因。
我们可以做的是回答“如何调查SSRS性能问题?”的问题。到目前为止,我发现的最好的工具之一是使用ReportServer目录数据库中的ExecutionLog2 View。在您的情况下,要查看的重要列:
这将为您提供进一步调查的起点。最有可能(根据你的描述)我猜测问题出在第一位。一个合适的后续步骤是分析SSRS执行的查询,可能使用执行计划。
答案 1 :(得分:0)
1)尝试用连接逻辑替换子查询。尽可能好。我知道很多次子查询感觉更合乎逻辑,因为当我们在宏观视图中思考时,它会使问题流动[这个结果集]得到[结果设置出来]。 2)也可以放索引。而且因为它的int会更快。