隐藏

power bi 高级筛选器 filter

发布:2024/9/25 21:00:59作者:管理员 来源:本站 浏览次数:115

power bi 高级筛选器 filter


   4. 高级筛选器 filter

       1. filter 含义及公式

       2. 什么时候使用filter?

       3. calculate+filter

       4. filter 新建表

       5. filter 创建唯一表条件

       6. filter与度量上下文


4. 高级筛选器 filter

1. filter 含义及公式


   filter函数对帅选的表进行横向的逐行扫描,这样的函数叫迭代函数

   filter(表名,条件)

       注意:表名必须是一端的表,不能是多端的表


   filter总分1 = CALCULATE([总分],filter('花名册',[总分]>250))

   filter总分2 = CALCULATE([总分],filter('成绩表',[总分]>250))

       1



2. 什么时候使用filter?


   calculate函数条件筛选时,是固定值


列 条件值

“表”[列] = 固定值

“表”[列]>= 固定值

“表”[列] > 固定值

“表”[列] < 固定值

“表”[列] <= 固定值


   filter函数条件筛选

   列 条件值

   [列] = [度量值]

   [列] = 公式

   [列] = [列]

   [度量值] = [度量值]

   [度量值] = 公式

   [度量值] = 固定值


3. calculate+filter


   calculate(表达式(度量值),filter(表名,条件))


   总分 = sum('成绩表'[分数])

   1班男生a = calculate([总分],'花名册'[班级]="1班",'花名册'[性别]="男")

   1班男生b = calculate([总分],filter('花名册','花名册'[班级]="1班" &&'花名册'[性别]="男"))

    


  


4. filter 新建表


测试表 = filter('花名册','花名册'[班级]="1班" &&'花名册'[性别]="男")


   1


5. filter 创建唯一表条件


   注意:表名必须是一端的表,不能是多端的表

       可以根据values()函数常见一端表


filter总分1 = CALCULATE([总分],filter('花名册',[总分]>250))

filter总分2 = CALCULATE([总分],filter('成绩表',[总分]>250))

filter总分3 = CALCULATE([总分],filter(values('花名册'[学号]),[总分]>250))


  


6. filter与度量上下文


   注意:

       度量上下文需要创建度量值

       临时创建的没有上下文筛选功能,如:um(‘成绩表’[分数])

   解决方式,嵌套一个calculate()即可


filter总分1 = CALCULATE([总分],filter('花名册',[总分]>250))

filter总分4 = CALCULATE([总分],filter('花名册',sum('成绩表'[分数])>250))

filter总分5 = CALCULATE([总分],filter('花名册',CALCULATE(sum('成绩表'[分数]))>250))