首页 > 解决方案 > 通过矩阵中的多个维度表过滤事实表(Power BI / Power Pivot)

问题描述

我有一个关于 Power BI (DAX) 中的筛选上下文的非常基本的问题。

数据模型由3个表组成:

在设置 3 个表(事实表中的外键到维度表中的主键)之间的关系(一对多)后,我构建了一个矩阵,该矩阵由以下字段组成,混合了来自 2 个维度表的过滤器:

作为行(过滤上下文):

作为数据衡量标准:租赁租金总和

我的问题:

  1. 当我使用来自 2 个不同的 Dim 表(彼此之间不相关)中的字段时,过滤器是否会正常工作?它们与事实表的关系都是正确的(都是“一对多”和下游),但我不确定混合这样的二维字段时矩阵中的过滤器流是否正确。

  2. 如果它不能正常工作,也许解决方案是使用 CrossFilter 功能,以便过滤器流从 Fact Table 上游到另一个 Dimension Table?在那种情况下,3张桌子会正确连接吗?

提前致谢

标签: filterpowerbirelationshipdaxpowerpivot

解决方案


第一个问题的答案是肯定的,过滤器会正常工作。过滤器上下文由来自 dim1 和 dim2 的过滤器组成。它会在您的情况下自动传播。

过滤上下文会自动从关系的一侧传播到多侧,而不是从多侧传播到一侧。

至于您的第二个问题,当您在关系的一侧(在维度表中)定义度量时,使用交叉过滤器或双向过滤器,在这种情况下,过滤器不会自动传播并且您需要使用交叉过滤器或双向过滤器。

访问:https ://www.sqlbi.com/articles/row-context-and-filter-context-in-dax/


推荐阅读