函数周期表丨筛选丨值&表丨RELATED系列 - 知乎

10/19 07:14
阅读数 23

RELATED函数与RELATEDTABLE函数

这两个函数属于“筛选”类函数,通常情况下适用于跨表计算。

用途:根据模型关系,匹配对应数值。

RELATED会根据模型关系将维度表的数据匹配到事实表,也就是多端找一端对应值;
RELATEDTABLE是RELATED的表函数模式,通常是将事实表的数据匹配到维度表,即一端寻找多端的对应值。

语法

语法1:

DAX=
RELATED(<列)

语法2:

DAX=
RELATEDTABLE(<表>)

参数

列:现有列,不能是表达式。
表:现有表,不能是表达式。

返回结果

RELATED返回结果为当前行所对应的匹配值;

RELATEDTABLE返回结果为整张表。

例子

模拟数据:

模型关系:

这是白茶随机模拟的一组数据,一份事实表,一份维度表;模型关系是很常见的一对多关系。

例子1:

RELATED例子1 =
RELATED ( '维度'[组别] )

结果:

为每一组数据,添加维度表中所对应的[组别]信息。

例子2:

RELATEDTABLE错误示范 =
RELATEDTABLE ( '例子' )

结果:

这是白茶列举的一个错误示范,因为本身RELATEDTABLE函数属于表函数,结果返回一张表,因此不能直接添加到计算列当中。
那么,我们要想在计算列中使用,该怎么处理呢? 聚合就OK了!

例子3:

RELATEDTABLE正确示范 =
COUNTROWS ( RELATEDTABLE ( '例子' ) )

结果:

统计维度表中的数据在事实表中的行数,也就是实际业务中我们经常说的订单数

例子4:

销售金额 =
SUMX ( '例子', '例子'[销售数量] * RELATED ( '维度'[售价] ) )

结果:

在当前事实表上下文中,通过跨表计算每类颜色的销售金额。

严格意义来说,RELATED系列函数本质也是迭代行上下文进行取值,只不过是顺着模型关系进行迭代,匹配取值。


小伙伴们❤GET了么?

白茶会不定期的分享一些函数卡片

(文件在知识星球[PowerBI丨需求圈])

这里是白茶,一个PowerBI的初学者。

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部