如何根据参数值使用不同的查询

时间:2015-02-19 05:13:16

标签: reporting-services

(1)。在我的ssrs报告中,我有2个查询需要放入我的数据集中。 根据下拉参数,我想选择要运行的查询。 有可能这样做吗?请帮助我。

实施例。 我

If (Parameters!sFlag.Value == "0")
{ Query1}
else
{Query2}

(2)。也基于相同的参数我想在文本框中选择字段。

实施例。 = I

If(Fields!IsFlag.Value="0" , Fields!Field3.Value, Fields!Field18.Value)

我正在使用Informix。

我搜索了很多,但找不到任何合适的东西,因为我用sql查询做了这件事,但是当我将它应用于Informix时它不起作用。

1 个答案:

答案 0 :(得分:1)

假设两个查询返回相同的字段并使用相同的连接,那么您可以使用参数将它们组合在一起以控制返回数据。我知道MSSQL优化器实际上不会打扰运行非真正的一半查询,不确定Informix。结果是当sFlag参数为" 0"时,您从第一个查询中获取值。并且从第二个查询开始,其中" 1"。

选择1作为值WHERE @sFlag =“0”

UNION ALL

选择2作为值WHERE @sFlag =“1”