我有以下查询:MDX:过滤家长带孩子
SELECT
NON EMPTY { [Measures].[Mes] } ON COLUMNS,
NON EMPTY { [Dim].[Lev1].Members, [Dim].[Lev2].Members } ON ROWS
FROM [Cube]
哪里LEV2是LEV1的分层孩子。 这给了我下面的结果:
Lev1 | Lev2 | Mes
_________________
yes | 1 | 1
yes | 2 | 2
no | 3 | 3
no | 4 | 4
编辑:也许这种观点是更相关:
Dim | Mes
- yes | 3
1 | 1
2 | 2
- no | 7
3 | 3
4 | 4
我要的是与LEV2 = 2或LEV2 = 4过滤LEV1得到以下结果:
Lev1 | Mes
___________
yes | 2
no | 4
这是甚至可能吗?
我使用Mondran和Olap4j。
Lev1和Lev2分别是Dim维度中同一层级的父级和子级。所以它们不能在两个不同的轴上分开。所以我尝试使用聚合和“FakeDimension”,但结果是错误的([是| 6]和[no | 6])。但也许这是一个mondrian的错误? – jBravo 2014-11-04 13:42:50
@pDupond我不知道蒙德里安的细节。但在Analysis Services中,如果'Lev1'和'Lev2'是同一层次结构的两个层次,那么甚至不能将它们作为行标题中的两个单独列,而只能作为一列与两个层的成员混合。您的多维数据集中是否具有这些级别所基于的列的属性层次结构? – FrankPl 2014-11-04 14:35:55
我对我的解释质量不好表示抱歉。我编辑了我的问题。我希望它会更相关。 – jBravo 2014-11-05 08:14:15