函数周期表丨筛选丨无丨REMOVEFILTERS
REMOVEFILTERS函数
REMOVEFILTERS函数属于“筛选”类函数,其本身不属于表函数,也不属于值函数,仅作为CALCULATE函数的调节器使用。
REMOVE—移除的意思;
FILTERS—筛选的意思;
因此REMOVEFILTERS函数的用途顾名思义,移除筛选器的效果。
这么说可能比较绕,白茶的理解是,这个函数就是ALL的小号,具有部分ALL函数的效果。
语法
DAX=
REMOVEFILTERS([<表> | <列>[, <列>[, <列>[,…]]]])
参数
表:要清除筛选的表;
列:要清除筛选的列。
返回结果
其本身并不能返回任何表或值,但是能直接影响CALCULATE函数的运算结果。
例子
模拟数据如下:
这是白茶随机模拟的一份数据。
例子:
例子 =
DIVIDE (
SUM ( '例子'[销售数量] ),
CALCULATE ( SUM ( '例子'[销售数量] ), REMOVEFILTERS () )
)
对比ALL函数:
对比 =
DIVIDE ( SUM ( '例子'[销售数量] ), CALCULATE ( SUM ( '例子'[销售数量] ), ALL () ) )
结果如下:
从结果上看,REMOVEFILTERS函数此时的效果与ALL函数效果是一致的,都是为分母清除了当前筛选上下文,计算总计值,从而求出类别占比。
无论是微软官方,亦或是其他资料都是这么描述的:
REMOVEFILTERS函数仅作为CALCULATE函数调节器使用,其用途此时与ALL函数一致;
但是ALL函数除了调节器清除筛选作用外,还可以作为表函数使用。
从官方的介绍来看,REMOVEFILTERS函数仅是为了书写CALCULATE函数时,使其ALL函数的语义更为清晰,也更容易让人理解;
但白茶觉得由于ALL函数的出场率以及实用性远远高于前者,因此略微使其显得有点鸡肋了。
不过,如果是为了便于其他人理解DAX代码含义,还是推荐使用的。
小伙伴们❤GET了么?
白茶会不定期的分享一些函数卡片
(文件在知识星球[PowerBI丨需求圈])
这里是白茶,一个PowerBI的初学者。
Fabric丨白茶 文章被收录于专栏
数据分析进阶之路,带你深入了解可视化技巧。