DAX/PowerBI系列 - 参数表(Parameter Table) - 大客户分析(Top N)

DAX/PowerBI系列 - 参数表(Parameter Table) - 大客户分析(Top N)

难度: ★☆☆☆(1星)

适用范围: ★(3星)

 

概况:
此文为DAX/PowerBI系列 - 参数表(Parameter Table) 的续集,由于比较重要,因此单独分一篇文章来说。

 

应用场景

很多时候,我们需要显示前10个畅销品,头30名客户,Top 10 Sales等等,用参数表结合排序函数,很容易就实现这个。

 

  • 前10个畅销品
  • 头30名客户
  • Top 10 Sales

 

 

欢迎交流与骚扰

最终PowerBI效果显示如下(耐心等待PowerBI 出来,噔噔噔噔~~~)

 https://app.powerbi.com/view?r=eyJrIjoiMWMwMGEyMmItYWJiMS00M2Q4LThmZDMtMWU0NmExMDkxY2E4IiwidCI6ImQxYWY4NDdiLTJjZTEtNDRjYi1iYjUwLWQ1ODAyYmI0M2M4YiIsImMiOjEwfQ%3D%3D

 

要点:

 

  • RankX
  • Parameter Table(参数表)
  • BLANK 用法

 

 

欢迎转载,请保留原文链接和作者信息。O(∩_∩)O谢谢。
DAX/PowerBI系列 - 参数表(Parameter Table) - Top N 大客户分析
作者:马丁叔叔     链接:http://www.cnblogs.com/lizardbi/p/DAX-PATTERN-POWERBI-Parameter-Table-Top-N.html

  

 

数据模型:

 

这个度量值DAX很简单,如下:

TopSalesAmount = IF ( 
    HASONEVALUE ( 'Top'[Top] ),
    IF ( 
        RANKX ( 
            ALL ( Sales[Product] ), 
            [SalesAmount] 
        ) <= VALUES ( 'Top'[Top] ), 
        [SalesAmount], 
        BLANK()  ---这里是重点
    )
)

说明一下:

1)这里用RankX排序,小于等于N的返回度量值;

2)BLANK是重点,如果是blank,即只返回头N个记录的值,其余为Blan不返回,从而达到TopN的目的。

 

 

玩起来:

要把玩上面的PowerBI请戳:https://app.powerbi.com/view?r=eyJrIjoiMWMwMGEyMmItYWJiMS00M2Q4LThmZDMtMWU0NmExMDkxY2E4IiwidCI6ImQxYWY4NDdiLTJjZTEtNDRjYi1iYjUwLWQ1ODAyYmI0M2M4YiIsImMiOjEwfQ%3D%3D

 

 

参考文章:

http://www.daxpatterns.com/parameter-table/

posted @ 2017-03-15 16:12  马丁叔叔  阅读(5638)  评论(0编辑  收藏  举报