BI:相关维度表中每个日期列的专用日期表

问题描述 投票:0回答:1

我正在使用 Power BI 数据集 (SSAS) / DAX,但我认为这是一个一般的 BI 问题。我有一个带有两个单独的日期列的存储表。我想使用两个日期列来过滤不同的时间范围。

例如我的主维度表是“Store”。

商店有[开放日期]和[关闭日期]列,列表中的每个商店都有自己的开放和关闭日期。我想将“Store”连接到日期表,以便我可以过滤不同日期范围的列表;每个日期表都有提供不同日期格式的列(Q#、MM-YYYY 等)。

我希望能够以某种方式过滤商店,例如,我可以返回[营业日期]为 2020 年第一季度且[关闭日期]为 2022 年 12 月的所有商店。

这里的最佳实践是在模型中拥有两个单独的日期表副本,其中“Store”[Open Date] 和“Store”[Close Date]”每个副本都与其自己的唯一表有关系,因此每个副本都可以独立过滤?

附注我的实际问题涉及两个以上的日期列,因此尝试确定每个日期列是否都有自己的日期表是多余的。我已将不同日期字段之间的非活动关系用于单个日期表,但这涉及通过度量访问筛选条件,这增加了复杂性并降低了灵活性。

powerbi dax ssas business-intelligence ssas-tabular
1个回答
0
投票

希望这是一个很好的例子,说明为什么您只需要一个日历表...... 假设我创建了一个简单的度量,例如 总销售额 := SUMX('SalesFact',[Quantity] * RELATED('DimProduct'[UnitPrice]))

然后我想与前一年进行比较。如果我有明确的衡量标准,那就小菜一碟了:

CALCULATE( [Total Sales Dollars], SAMEPERIODLASTYEAR('DimDate'[Date]))
...但只有当您的 SAMEPERIODLASTYEAR() 函数中有正确的日期维度表时,它才有效。如果不这样做,您将获得视觉效果中每个时间段具有相同值的未经过滤的总计。

假设您有度量,然后将其放入矩阵可视化的“值”部分。如果您有多个日历表,您何时使用哪一个?如果您选择错误,您将在一个轴上获得日期/时间单位的标准列表,但所有值都将相同,因为过滤是通过关系进行的。

您的模型中可以有多个日历表,但这会让人感到困惑。如果您使用 USERELATIONSHIP(),您可以拥有一个日历表,并根据 ShipDate、OrderDate、ManufactureDate 等(无论事实表中的任何日期列)进行运行求和等,并且无需更改模型。 我发誓 Adam Saxton(来自 GuyInACube)制作了一个关于日历表的视频,以及 PowerBI 如何处理没有表标记为日期/日历表的数据模型,因为我发誓这是我学到的。检查 GuyInACube YouTube 频道 - 有几个约会。

© www.soinside.com 2019 - 2024. All rights reserved.