Ssas 如何基于另一维度的属性获取单元格值

Ssas 如何基于另一维度的属性获取单元格值,ssas,mdx,Ssas,Mdx,我试图以某种方式将SSAS中的两个维度联系在一起 我有以下尺寸: 位置 价格方案 产品 我有一个事实和度量值组,它通过产品和价格方案链接(只有大约3个价格方案成员) 价格方案也是位置的一个属性。 我希望我的度量值组显示在每个位置。如果在我的源查询中,我根据价格方案加入位置,那么我会得到大约1亿条记录,这使得多维数据集处理需要很长时间。当处于销售价格方案级别时,度量值组中的行少于100万行 我想我的问题是:如何编写MDX查询,根据属性相对于位置维度的价格方案从度量值组中获取度量值 我知道我可以

我试图以某种方式将SSAS中的两个维度联系在一起

我有以下尺寸:

  • 位置
  • 价格方案
  • 产品
我有一个事实和度量值组,它通过产品和价格方案链接(只有大约3个价格方案成员)

价格方案也是位置的一个属性。 我希望我的度量值组显示在每个位置。如果在我的源查询中,我根据价格方案加入位置,那么我会得到大约1亿条记录,这使得多维数据集处理需要很长时间。当处于销售价格方案级别时,度量值组中的行少于100万行

我想我的问题是:如何编写MDX查询,根据属性相对于位置维度的价格方案从度量值组中获取度量值


我知道我可以做一个参考维度。。但是,这不就是通过对Location维度执行内部联接来修改查询吗?因此,仍然会有1亿行需要处理吗?

简单的OLAP规则:处理的越少,得到的MDX越慢

有两种方法:

  • 使用多对多关系:这也很慢,你还需要一个 连接两个维度的额外事实表
  • 使用缓慢变化的维度:在立方体上速度非常快,但是 将需要一些时间来处理。您可以通过设置 索引和ProcessingGroup属性到ByTable。粗略地说这就是你上面描述的
为了说得更多,我们想看看你们的数据方案