Mdx Mondrian-为什么我需要显式级别来引用层次结构中的成员?

Mdx Mondrian-为什么我需要显式级别来引用层次结构中的成员?,mdx,olap,mondrian,Mdx,Olap,Mondrian,如果我想引用Mondrian MDX查询中层次结构中的成员(使用Mondrian 4.4),我必须在表达式中显式引用该级别。例如,在SSAS中,我可以执行以下操作 [客户][客户地理][加拿大] 但在Mondrian中,我必须明确地添加第一层次的名称 [客户][客户地理][国家/地区][加拿大] 我应该在哪里查找故障排除?我的层次结构很简单,只有两个级别和hasAll=“false” 在SSAS中,当您编写此[Customer].[Customer Geography].[Canada]时,我相

如果我想引用Mondrian MDX查询中层次结构中的成员(使用Mondrian 4.4),我必须在表达式中显式引用该级别。例如,在SSAS中,我可以执行以下操作

[客户][客户地理][加拿大]

但在Mondrian中,我必须明确地添加第一层次的名称

[客户][客户地理][国家/地区][加拿大]


我应该在哪里查找故障排除?我的层次结构很简单,只有两个级别和
hasAll=“false”

SSAS
中,当您编写此
[Customer].[Customer Geography].[Canada]
时,我相信它是这方面的简写:

[Customer].[Customer Geography].[All].[Canada]
这两个脚本给出相同的结果:

SELECT 
  [Customer].[Customer Geography].[All].[Canada] ON 0
FROM [Adventure Works];

SELECT 
  [Customer].[Customer Geography].[Canada] ON 0
FROM [Adventure Works];

因此,如果您的层次结构没有
[All]
成员,则成员将是最高级别的子级。我认为
SSAS
将假定最高级别,即使您没有明确说明,但看起来
mondrian
需要将其明确添加到您的
mdx

@greggallowy我对上述SSAS的看法正确吗?我想您是。。。我猜
SSAS的
IsAggregatable
类似于
IsAggregatable的
hasAll
,那么,SSAS是否支持蒙德里安不支持的一些速记语法呢?@wrschneider——这就是我的假设,尽管我不是100%。你能将问题添加到
mondrian
用户组吗?即使我不使用
mondrian
我也很想知道情况是否如此。我的回答有帮助吗?