繁体   English   中英

结束表的 Power BI 聚合

[英]Power BI Aggregation of End Tables

我是 Power BI 和数据库管理的新手,我想参考我的最后两个问题( 数据库建模桥表Power BI 报表桥表)为自己阐明 Power BI 的工作原理。 我每年都有一个包含公司特定信息的main_table ,它连接到一个包含一些定量信息(例如销售数据)的end_table 这些表被建模为1:N关系,因此我不必两次存储相同的值,我认为这在数据建模中是一件好事。

我想在组列Year上聚合end tablevalue列。 令我惊讶的是,据我了解,当我期望对连接表中的组变量进行聚合时,Power BI 总结了最终表中的value

我的基本例子是基于这个数据和数据model(需要手动调整关系):

main_table<-data.frame(id=1:20, FK_id=sample(1:2,20, replace=TRUE), Jahre=2016:2020)         
main_table<-rbind(main_table,data.frame(id=21:25, FK_id=sample(2:3,5, replace=TRUE), Jahre=2015) )
end_table<-data.frame(id=1:3, value=c(10,20,30))

数据模型

包括所有列的数据的前 5 行如下所示:

原始数据

如果我取出所有行特定信息并总结value 它将始终显示每个Year中结束表的总和,即 60。

求和一个方向

进行双向连接无济于事。 它只是总结了每年end_table的现有值。 如果我使用Related value = RELATED(end_table[value])将值列添加到主表,我会得到正确的结果

双向正确表

我只是想知道 model 是否有另一种方法,或者在 Power BI 中分析这种1:N关系。 这经常出现,总是在主表中使用Related()添加列感觉有点乏味,而只需单击两列并期望聚合基于分组变量会很直观。 无论如何,问这个和我的其他两个问题对我有很大帮助。

这有点奇怪的建模情况(尽管它并不少见)。 一般来说, 构建星型模式很方便,其中维度表与事实表之间存在 1:N 关系。 例如

星型图

在此设置中,维度表中的项目(例如年份或客户)用于视觉对象的列和行中,并且度量通常聚合事实表中的列(例如销售额)。


你的例子颠倒了这一点。 您正在尝试使用年份作为维度对最终表中的列进行求和。 因此,它不会自动按照您的预期运行。

为了获得所需的结果,将Year视为维度,您需要编写一个对Year求和的度量,就好像它是一个维度一样。 由于main_table本质上是Year的维度表(每年一个唯一的行),因此您可以编写

SumValue = SUMX ( main_table, RELATED ( end_table[value] ) )

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM