如何實現(xiàn) DAX 按指定順序拼接字符串
小伙伴問,他拼接的字符串是隨機順序,如何實現(xiàn)特定順序拼接,如:按銷售額大小。本文來幫你解答。
先來看一個拼接字符串的效果,如下:

可以看出:
第一個,只是簡單的文本。
第二個,帶有銷售額,但元素未按銷售額排序。
第三個,帶有銷售額,且元素按照銷售額排序。
我們需要的正是第三種效果。
實現(xiàn)方法
實現(xiàn)方法如下:
Text.內(nèi)容+銷售額.按順序 =
VAR vList = ADDCOLUMNS( VALUES('Product'[Subcategory] ) , "@KPI" , INT( [Start:KPI] ) )
VAR vListRanded = ADDCOLUMNS( vList , "@Rank" , RANKX( vList , [@KPI] ) )
RETURN
CONCATENATEX(
GENERATESERIES( 1 , COUNTROWS( vList ) ) ,
VAR vRow = FILTER( vListRanded , [@Rank] = [Value] )
RETURN SELECTCOLUMNS( vRow , "Item" , [Subcategory] ) & " (" & SELECTCOLUMNS( vRow , "KPI" , [@KPI] ) & ") " , "," )如果你正在學(xué)習(xí) DAX,那么這又是一個非常好的案例可以幫助你理解 DAX 很多妙處。
這里的妙處在于:
CONCATENATEX?是無法合并多項內(nèi)容的,而同時需要一個被排序的內(nèi)容,這里使用迭代的思想(已經(jīng)在 BI 真經(jīng)中講解過),構(gòu)建一個用來迭代的順序表即可,在迭代時帶入需要的數(shù)據(jù)并進行顯示即可。
總結(jié)
巧妙利用不同的 DAX 函數(shù),不是僅僅需要技巧和記憶,有固定的思維模式和套路可以遵循。在《BI 真經(jīng)》課程給出了這些套路的統(tǒng)一思想,希望你看懂一個案例,駕馭各種多變的需求。
在訂閱了BI佐羅講授的《BI真經(jīng)》之《BI進行時》課程區(qū),除了可以下載本文案例,還可以觀看視頻講解。

Power BI 終極系列課程《BI真經(jīng)》

BI真經(jīng) - 讓數(shù)據(jù)真正成為你的力量
掃碼與精英一起討論 Power BI,驗證碼:data2021
點擊“閱讀原文”進入學(xué)習(xí)中心
↙
評論
圖片
表情
