如何:..WHERE STRTOSET(@ p1),STRTOSET(@ p2)

时间:2010-06-07 13:33:44

标签: reporting-services ssas mdx ssrs-2008

我试图通过两个(多选)参数来过滤查询。

在为第一个执行此操作时,它可以正常工作,但在我添加第二个时会抱怨。

我的语法错误是否有更好的方法来实现我想要的目标?

2 个答案:

答案 0 :(得分:1)

MDX WHERE与SQL WHERE几乎没有共同之处。 MDX WHERE不影响返回的行数,只是要从中检索单元格的多维数据集切片。

我会使用FILTER函数,因为MDX WHERE子句必须是一个元组(单元格地址),不能再少,即。,

(Dim1.Member,Dim2.Member等)

希望这有帮助。

答案 1 :(得分:0)

尝试过子查询?

SELECT
    [Measures].[YourMeasure]
ON COLUMNS,
    [Dimensions].[YourDimension]
ON ROWS 
FROM

(SELECT STRTOSET(@p1) ON COLUMNS FROM
(SELECT STRTOSET(@p2) ON COLUMNS FROM   

[YourCube] ) )