0

在 SSRS 2008 R2 上使用嵌入式数据集编写动态查询非常简单。

例如,如果我有一个名为Employees 的表和一个名为@Column 的报告参数,其中包含“姓名”或“姓氏”或其他任何内容,我可以为我的数据集编写以下查询:

="SELECT * FROM Employee WHERE " & Parameters!Column.Value & " =  " 
  & Parameters!Criteria.Value

我想用共享数据集实现同样的目标。似乎参数集合在共享数据集中不可用,我没有其他方法可以访问参数值来进行动态查询。

提前致谢

4

1 回答 1

1

我终于使用 T-SQL 的 CASE WHEN 重写了我的查询。

所以新的查询(不是那么动态)是这样的:

SELECT *
FROM Employee
WHERE 
    CASE @Column
       WHEN 'Name' THEN Name
       WHEN 'Surname' THEN Surname
    END
    = @Criteria

谢谢。

于 2013-10-21T10:51:49.287 回答