暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

PowerBI双向筛选与CROSSFILTER

BISeven 2021-09-01
1185

之前已经写过多篇关于双向筛选的文章,对于双向筛选的使用应该是谨慎的,双向筛选可能会给模型带来性能问题,也可能会带来筛选器传播上的歧义,所以在使用双向筛选器时应该考虑清楚它所带来的问题后,再确定是否使用。

 

当我们启用双向筛选后,意味着涉及到的度量值都会在双向筛选的模式下进行计算,而有些度量的计算并不需要双向筛选,这些不必要的性能损耗,我们可以采用CROSSFILTER为每个度量值进行特定的开启双向筛选,而不是为所有度量开启双向筛选。

 

  例如,在这篇文章中的列子,我们想要查看不同产地的咖啡卖了多少个城市? 

要想实现这个需求,那品类表必须能够通过销量表筛选城市表,但是销量表与城市表之间单向关系,销量表不能够筛选城市表,那除了销量表与城市表之间开启双向关系,我们还可以利用CROSSFILTER函数单独为该度量值开启双向筛选。

 

 

度量值如下:

 

cnt.provinceBymanufacture = 
CALCULATE(DISTINCTCOUNT ( '城市'[省份] ),
CROSSFILTER('城市'[城市Key], '销量'[城市Key], Both)) // CROSSFILTER函数单独开启双向筛选


 
// 没有双向筛选时的结果
Measure1 = DISTINCTCOUNT ( '城市'[省份] )


 

结果:

 

 

所以, CROSSFILTER可以不在开启双向筛选的情况下改变筛选器的传播方向,我们可以利用CROSSFILTER灵活的为每个度量值之开启双向筛选。

 

PowerBI-双向筛选虽好,但不要乱用, 也不能不用(一)

PowerBI-双向筛选虽好,但不要乱用, 也不能不用(二)

PowerBI-双向筛选虽好,但不要乱用, 也不能不用(三)


好了,我是BISeven,欢迎与我进行交流

 

 

 

 

 

 

文章转载自BISeven,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论