在SSAS中正确地聚合一对多关系中的值

时间:2011-11-23 17:00:42

标签: ssas olap dimensional-modeling

所以我有一个货运维度数据库:

货件包含许多包裹。 包中包含许多费用。

因为这是维度而且费用是我最感兴趣的数据,所以我将3个表格及其多对一关系展平为单个费用事实表格。这是一个包含两个包装,每个重1磅的货物的快速快照。

enter image description here

为了使包装重量可查询,我需要将其推向电荷粒。这会导致聚合问题。包装重量为1磅适用于每个包装,并且应该为装运产生2磅。我找不到以这种方式将重量作为衡量标准的方法。我是SSAS和OLAP的新手,并不知道接下来会尝试什么。任何建议都将不胜感激。

1 个答案:

答案 0 :(得分:1)

问题在于您建模数据的方式。您(事实)表的最低粒度级别是“费用金额”...“包裹重量”金额处于更高的粒度级别(包级别)。

你有两个选择......

  1. 在您的ETL中,您可以为每个包裹分配不同费用金额的1磅(请参见下面的屏幕截图)。这样,当您通过Shipment或Package切割此事实表时,您将分别看到2磅或1磅。

    screenshot

  2. 将“包装重量”字段从此事实表中拉出,并将其放在粒度为包级别的字段中。