![b4d379fd1473087cf440f34cdc53cf6f.png](https://img-blog.csdnimg.cn/img_convert/b4d379fd1473087cf440f34cdc53cf6f.png)
FILTER函数
FILTER函数属于“筛选”类函数,隶属于“表”函数,其使用频率可以算得上最高的几个函数之一。
用途:用来筛选表或者作为计算的筛选条件。
语法
DAX=
FILTER(<表>,<条件>)
参数
表:可以是固定的表,也可以是表的表达式。
条件:过滤条件。
返回结果
由符合筛选条件的行组成的表。
例子
模拟数据:
![4eb148b7c85469dd46cc264ce5fdb67c.png](https://img-blog.csdnimg.cn/img_convert/4eb148b7c85469dd46cc264ce5fdb67c.png)
例子1:
FILTER例子1 =
FILTER ( '例子', MONTH ( '例子'[日期] ) < 2 )
结果:
![076500ea1ef43ed3bed4948319020f5f.png](https://img-blog.csdnimg.cn/img_convert/076500ea1ef43ed3bed4948319020f5f.png)
筛选出2月份之前的所有数据。
例子2:
FILTER例子2 =
FILTER ( '例子', MONTH ( '例子'[日期] ) < 2 && '例子'[类别] = "白" )
结果:
![315317686ef1d64a017fbc5e4176b0c8.png](https://img-blog.csdnimg.cn/img_convert/315317686ef1d64a017fbc5e4176b0c8.png)
筛选出2月份之前,且颜色为“白”的所有数据。
其效果等同于以下两组代码:
FILTER和AND =
FILTER ( '例子', AND ( MONTH ( '例子'[日期] ) < 2, '例子'[类别] = "白" ) )
结果:
![1f5ca5e00773e0654334b96e22e61572.png](https://img-blog.csdnimg.cn/img_convert/1f5ca5e00773e0654334b96e22e61572.png)
代码:
双层FILTER =
FILTER ( FILTER ( '例子', MONTH ( '例子'[日期] ) < 2 ), '例子'[类别] = "白" )
结果:
![ade49583ffe27d6a979c9073f750cb57.png](https://img-blog.csdnimg.cn/img_convert/ade49583ffe27d6a979c9073f750cb57.png)
从结果上看,三者的结果是一模一样的,但是还是有点区别。
1、从性能上看,双层FILTER的性能优于前两者;
2、从执行顺序上看,多层FILTER时,通常是从内往外计算。
例子3:
FILTER例子3 =
CALCULATE (
SUM ( '例子'[数据] ),
FILTER ( FILTER ( '例子', MONTH ( '例子'[日期] ) < 2 ), '例子'[类别] = "白" )
)
结果:
![deed2c1c953b1943ae138927ce653bcf.png](https://img-blog.csdnimg.cn/img_convert/deed2c1c953b1943ae138927ce653bcf.png)
与CALCULATE函数搭配,计算2月份之前,且颜色为白色的数据值。
当然,还有很多别的用法,比如说累计求和等等,这里就不一一举例了。
小伙伴们❤GET了么?
白茶会不定期的分享一些函数卡片(文件在知识星球[PowerBI丨需求圈])
![9303dfef0b85dae1ad661b8c512589ec.png](https://img-blog.csdnimg.cn/img_convert/9303dfef0b85dae1ad661b8c512589ec.png)
这里是白茶,一个PowerBI的初学者。
![7b8a08eea6747a7fc254ff3650f023ac.png](https://img-blog.csdnimg.cn/img_convert/7b8a08eea6747a7fc254ff3650f023ac.png)