Powerpivot模型有2个事实表(?)

时间:2013-08-09 21:27:01

标签: powerpivot

我对Powerpivot比较陌生,在使用它时遇到了一个问题(使用excel 2013)。

问题是当我有2个csv文件是facttables而1是维度表时,我应该如何在powerpivot中建模我的数据。

我有一个(测试)powerpivotmodel源自我加载到PowerPivot的3个.csv文件。

PowerPivot Model

  1. 一个名为费用的事实表(持有某人的费用)
  2. 另一个名为expenseDetails的facttable,其中包含费用记录的详细信息
  3. 与expenseDetail表
  4. 关联的名为category的维度表

    费用和费用详细信息具有相同的信息 - > 1费用记录ALWAYS是表费用中的1条记录和费用详情表中的1条或多条记录 - >因此,在两个表中都有1个记录的例子将是一个与1个类别完全相关的数量 - >如果1个金额与2个(或更多)类别相关,则在数据库中,费用表中有1个记录,而FeeDetail表中有2个(或更多)记录

    类别表与expenseDetail表相关联。

    当我将这3个表加载到powerpivot中时,这些关系:
    - 费用详细信息和类别之间的1 - 费用详情和费用之间的1

    然后
    - 当我使用来自expensedetails和category的字段(它们是直接链接的)时,我可以制作一个完美的数据透视图 - 但是当我使用来自类别和费用表的字段时,我得到的数据不正确。
    当我按类别计算费用总额时,所有类别的总和都是相同的......
    可能因为在这两个表之间的费用详情表位于(...)

    - >另外,excel表示可能是关系错过的一个mesasage ......

    我应该如何在数据模型中修复此问题? 我正在考虑制作一个只有1个因子表的明星模型......但是从列表略有不同的2个CSV文件中,我该如何制作1个事实表呢?

    如果无法实现1个事实表,那么制作数据模型的正确方法是什么?

    提前感谢您的想法和/或支持!

    罗伯特

1 个答案:

答案 0 :(得分:0)

我认为你的模型没有任何问题。您无法将费用表中的值与类别表组合,因为它们不是直接相关的。如果您需要能够在同一个数据透视表中查看费用和类别中的字段,则可以使用related function将这些值作为计算列添加到费用明细表中,然后在费用表中创建最初的度量在那些计算列中的费用详细信息中。您可能需要使用summarize函数来使度量返回适当的金额,因为这些金额是在费用级别而不是费用明细级别汇总的。