2

如果我有一个简单的 MDX 查询,例如:

 SELECT 
 NON EMPTY { [Measures].[Amount] } ON COLUMNS, 
 NON EMPTY {  [Date].[Date].[Date]  } 
 ON ROWS FROM [MyCube] 

而且我想通过一个 Id 过滤它另一个维度,这很容易。

 SELECT 
 NON EMPTY { [Measures].[Amount] } ON COLUMNS, 
 NON EMPTY {  [Date].[Date].[Date]  } 
 ON ROWS FROM [MyCube] 
WHERE (Asset].[Id].&[123])

但是如果我有多个 ID,有没有办法在不动态构建 MDX 查询的情况下传递这些 ID?

4

2 回答 2

3

尝试这个:

SELECT
    NON EMPTY { [Measures].[Amount] } ON COLUMNS,
    NON EMPTY { [Date].[Date].[Date] } ON ROWS
FROM [MyCube]
WHERE (
   { [Asset].[Id].&[123],[Asset].[Id].&[124]}
)
于 2011-05-22T05:12:24.163 回答
2

我不是 100% 确定您所说的不动态构建 MDX 查询是什么意思,但是您想要的查询形式是这样的:

SELECT
    NON EMPTY { [Measures].[Amount] } ON COLUMNS,
    NON EMPTY { [Date].[Date].[Date] } ON ROWS
FROM [MyCube]
WHERE (
    [Asset].[Id].&[123],
    [OtherDim].[Foo].&[3919]
)

...所以我想这需要一些动态的建筑,但不要太紧张。

于 2009-11-27T09:42:08.863 回答