DAX/PowerBI系列 - 參數表(Parameter Table)


 

DAX/PowerBI系列 - 參數表(Parameter Table)

難度: ★☆☆☆(1星)

適用范圍: ★(4星)

概況:

這個模式比較簡單靈活,而且很實用。所用的DAX語句也比較簡單。

但它的變化形式很多和擴展應用范圍很廣。后文介紹的動態分組(Dynamic Segmentation)也是其中一種。

主要是通過篩選器(Slicer)選擇不一樣的參數時,DAX語句根據所選的值反映相關的選擇值進行計算。

 

注:參數表,通常可以不放到Data warehouse里面,可以在Excel,或者PowerBI里面,用戶可以隨時對參數進行修改。

 

----------------------------------------------------------------------------------------------

先看最后PowerBI效果:

應用場景:

以下是幾個應用場景:

  • what-if分析
    •   商品打8折,打9折銷售額,盈利都有什么變化
  • 算法選擇或度量選擇
    •   根據選擇,返回同一個度量不一樣的算法結果。
  • Top N

 

以銷售為例:

要求:對SalesAmuont放縮,表示為x1, x1,000, x1000,000等等。

先顯示效果:

數據模型:

 

Sacle表不與其他表相連,DAX只需要拿到所選的值對原有度量進行放縮即可。

Sales Amount :=
IF (
    HASONEVALUE ( Scale[Scale] ),
    SUM ( Sales[SalesAmount] ) / VALUES ( Scale[Scale] ),
    SUM ( Sales[SalesAmount] )
)

要點:

  • 通常一個參數表只選擇一個值,通過VALUES函數(或MIN/MAX)得到所選的值。

 

顯示結果參照上面動圖或者如下:

左邊x1,右邊x1000


 

 

 

 

 

 

擴展1:多參數表

下面顯示兩個參數 - 折扣數和起訂量 - 對折扣后的銷售額的影響。

效果:

 

數據模型:

DiscountedSalesAmount 的計算
DiscountedSalesAmount :=
IF (
    HASONEVALUE ( Discounts[DiscountValue] ) && HASONEVALUE ( MinQuantity[MinQuantity] ), --折扣和起訂量都選了
    CALCULATE (
        [SalesAmount] * ( 1VALUES ( Discounts[DiscountValue] ) ),
        Sales[Quantity] >= VALUES ( MinQuantity[MinQuantity] )
    )
    + CALCULATE (
        [SalesAmount],
        Sales[Quantity] < VALUES ( MinQuantity[MinQuantity] )
    ),
    IF (
        NOT ( ISFILTERED ( Discounts[Discount] ) )
            && NOT ( ISFILTERED ( MinQuantity[MinQuantity] ) ),
        [SalesAmount],  --都沒選
        IF (
            HASONEVALUE ( Discounts[Discount] ) --只選了discount的一個值
                && NOT ( ISFILTERED ( MinQuantity[MinQuantity] ) ) ,
            CALCULATE ( [SalesAmount] * ( 1VALUES ( Discounts[DiscountValue] ) ) ),
            BLANK ()
        )
    )
)

 

PowerBI效果顯示如下:

 

要把玩上面的PowerBI請戳:

在線:Parameter-Table-Multi: https://app.powerbi.com/view?r=eyJrIjoiNDdkNjgwYjctZjBhNy00OThiLWJlMjctN2EyMDdiMzI2YWQzIiwidCI6ImQxYWY4NDdiLTJjZTEtNDRjYi1iYjUwLWQ1ODAyYmI0M2M4YiIsImMiOjEwfQ%3D%3D

下載鏈接: https://pan.baidu.com/s/1eR2R6Pc 密碼: kiuk

 

 

Top N(大客戶分析)  和 Period Table分析比較重要,會單獨的后續文章介紹。

 

文末有彩蛋!!!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM