父子关系的MDX查询

时间:2010-12-13 08:51:53

标签: parent-child olap mdx mondrian

我有一个OLAP基本上有一个维度具有父子关系。 因此维度具有父ID和子ID。

存在具有child-id的事实表。当我提供父ID时,我想获取一个孩子及其所有孩子的数据。

如何在MDX查询中实现此目的?

 <Dimension foreignKey="child_id"  name="SUPPLIER">
  <Hierarchy hasAll="true" allMemberName="all" allMemberCaption="all" primaryKey="child_id" >
    <Table name="suppliers">
    </Table>
    <Level name="SUPPLIER_L"  column="child_id" nameColumn="child_id" parentColumn="parent_id"  
    uniqueMembers="true" levelType="Regular" hideMemberIf="Never" >
    </Level>
  </Hierarchy>
</Dimension>

我有这个层次结构的维度。

2 个答案:

答案 0 :(得分:2)

看看DESCENDANT MDX功能。

你只需要说明你想要在层次结构中开始的位置,然后在哪个级别停止。然后它将为您提供起点和终点之间的所有级别。

发布你的mondrian架构多维数据集的部分,这样我就可以给你准确的语法

答案 1 :(得分:0)

以下MDX应该为您提供'your-parent-id'下的子树:

选择   [措施]。[你的措施] 0,   后代([供应商]。&amp; [your-parent-id],[供应商]。&amp; [your-parent-id] .level,SELF_AND_AFTER)ON 1 来自[你的立方体]