【发布时间】:2023-03-16 00:52:01
【问题描述】:
一个 SSRS 数据集有两个 T-SQL 查询。只有当某个参数选择了两个或多个值时,才会运行一个查询。仅当参数仅选择一个值时,才会运行另一个查询。如何让数据集知道参数中选择了一个值还是多个值?
【问题讨论】:
-
您可以创建一个额外的整数参数,将其设置为 hidden 并使用这样的表达式作为默认值:
Parameter!YourMultipleValueParam.Value.Count然后在数据集中您可以使用 hidden参数来确定在YourMultipleValueParam参数中选择的值的数量。 -
好的,我在主数据集中写什么来定义要使用的查询?像 IF (@YourMultipleValueParam > 1) 和 (@YourMultipleValueParam = 1) 这样的东西可以吗?
-
我的意思是你有两个在 SSRS 中创建一个额外的隐藏参数,并使用它来将所选值的数量传递给数据集。所以如果你将隐藏参数命名为
NumberOfValues,你应该在SQL中使用IF( @NumberOfValues > 1)。 -
好的,这很好用,它解决了我的问题,但我不能将您的回复标记为最佳答案,因为出于某种原因它不会让我这样做,但我只想说这种情况是现在关闭以避免任何未来不需要的答案
-
我会添加一个答案,以便您可以积极地结束问题。
标签: sql-server visual-studio tsql reporting-services ssrs-2012