我在 SSRS 2012 中运行一个非常基本的报告。我只是从表中检索一些数据,并且我在查询的 Where 子句中使用了一个参数。如果我在 SSRS 查询中对参数进行硬编码,则查询运行速度很快(不到 5 秒),但如果将其保留为动态选择的参数,则查询需要 5 分钟以上才能呈现。这是一个类似于我正在使用的抽象查询:
Select Col1, Count(*)
From Tbl1
Where Col2 = @Para1
Group By Col1
OPTION (RECOMPILE);
我已经尝试在查询中使用 OPTION (RECOMPILE) 来解决参数嗅探问题。我还检查了数据类型,Col2 是 CHAR(2),Para1 是 TEXT,所以在运行时不需要转换。
有什么想法可能导致这种情况吗?