MDX从多个维度获取数据,无需度量

问题描述

我有一个多维的 OLAP 多维数据集。我正在尝试从其中两个检索相关数据。问题是这个立方体没有任何度量,所以我不确定如何使用它。作为旁注,我对 OLAP 多维数据集和 MDX 完全陌生。

我尝试过这样的事情:

SELECT
{} ON 0,CROSSJOIN (
[Entity].[EntityPRID].&[1234],[Entity].[EntityName].[EntityName].MEMBERS,[Entity-Parent].[EntityParentPRID].[EntityParentPRID].MEMBERS
)
ON 1
FROM[Model]

但是,我获得了包含所有可能的实体父级 PRID 的行,而不仅仅是具有 PRID 1234 的实体的行。我尝试添加 NON EMPTY 和 NonEmptyCrossJoin,但是在这两种情况下,我都得到了 0 个结果。

我的预期结果是:

1234 | SomeName | 4321

我现在得到的是:

1234 | SomeName | 4000
1234 | SomeName | 4001
1234 | SomeName | 4002
1234 | SomeName | 4003
1234 | SomeName | 4004
1234 | SomeName | 4005
1234 | SomeName | 4006
...

如果可以以某种方式在输出中包含列名,那也是理想的,因为最后我需要在我的 C# 应用程序中使用查询并将数据放入数据表中。

解决方法

也许尝试将 EXISTING 函数包裹在这一位:

EXISTING(
  [Entity-Parent].[EntityParentPRID].[EntityParentPRID].MEMBERS)