ISCROSSFILTERED函数与ISFILTERED函数
这两个函数,属于“筛选判断”类函数,隶属于值函数。
IS——是的意思;
CROSS——交叉的意思;
FILTERED——筛选的意思;
因此,
ISCROSSFILTERED函数代表判断是否受到交叉筛选影响;
ISFILTERED函数代表判断是否受到直接筛选影响。
用途:写一些高级DAX的时候,可以用来优化代码组合。
语法
语法1:
DAX= ISCROSSFILTERED(<列>)语法2:
DAX= ISFILTERED(<列>)参数
列:不能是表达式,只能是现有列。
返回结果
TRUE或FALSE
例子
模拟数据:
这是白茶随机模拟的一组数据。
代码1:
ISCROSSFILTERED = ISCROSSFILTERED ( '例子'[类别] )代码2:
ISFILTERED = ISFILTERED ( '例子'[类别] )将这两组代码分别放入到两组上下文中如下:
可以看得出来,在参数**[类别]上下文中,两组代码返回的结果都为TRUE。而在[组别]**上下文中,CROSS结果为TRUE,FILTERED结果为FALSE。
因为ISCROSSFILTERED函数受到交叉筛选影响,所以无论是哪种上下文,其结果都是TRUE;
而在**[组别]上下文中,直接筛选因素[类别]**没有起到筛选作用,因此ISFILTERED函数返回结果均为FALSE。
点击切片器,我们继续观察结果:
当使用**[类别]**作为筛选时,两个表中的CROSS结果依然为TRUE;
而**[组别]上下文中,此时的ISFILTERED结果也为TRUE,因为这个时候直接筛选[类别]**处于生效状态,无论是多选还是单选;
当**[类别]取消选择时,ISFILTERED在[组别]**上下文中的结果统一返回FALSE。
小伙伴们❤GET了么?
白茶会不定期的分享一些函数卡片
(文件在知识星球[PowerBI丨需求圈])
这里是白茶,一个PowerBI的初学者。