如何在 PowerBI 中實(shí)現(xiàn)度量值的自定義排序
在我們進(jìn)行 Power BI 計(jì)算時(shí),默認(rèn)情況下只能按字母或數(shù)字對(duì)度量結(jié)果進(jìn)行排序。
為了避免這種情況,我們需要一種技術(shù)來改進(jìn)所需的排序順序,同時(shí)遵守字母順序限制。這種方法是使用空白 Unicode 字符。
UNICHAR(8203) 字符在可視化表中不可見,但 DAX 會(huì)將其識(shí)別為有效。排序時(shí),空字符優(yōu)先于字母。因此,一個(gè)文本的空字符越多,它出現(xiàn)的越早。通過配合使用函數(shù) REPT(),我們可以將多個(gè)空白字符附加到 Switch 語句的每個(gè)結(jié)果中,以建立我們預(yù)期的排序順序。
舉一個(gè)簡(jiǎn)單的例子,有四種植物,分別命名為 A、B、C 和 D?,F(xiàn)在需要測(cè)量一下每天給它們澆了多少水。放入報(bào)告中。它們至少需要 20 毫升的水量才能生存,但超過水量 50 毫升也會(huì)阻止它們生長(zhǎng)。
創(chuàng)建一個(gè)表格,其中包含以下內(nèi)容:花朵低于 20 毫升,標(biāo)記為壞 。20 – 50 毫升時(shí),標(biāo)記為好。最后,如果花朵接收水量超過 50 毫升,則標(biāo)記為警告。
要求按照“壞”、“警告”、“好”的順序顯示它們。
將模擬數(shù)據(jù)放入一個(gè)表中。

如果我想讓它評(píng)價(jià)以壞、警告、好的順序顯示,怎么樣可以做到呢?
Power BI 表格視圖有一個(gè)功能叫做按列排序,但是它只能用于表中的列排序,在 DAX 計(jì)算中我們可以借助 UNICHAR(8203)空白字符實(shí)現(xiàn)。
評(píng)價(jià) =SWITCH (TRUE () ,SELECTEDVALUE ( '澆水記錄'[水量] ) < 20 , REPT ( UNICHAR ( 8203 ), 3 ) & "壞" ,SELECTEDVALUE ( '澆水記錄'[水量] ) > 60 , REPT ( UNICHAR ( 8203 ), 2 ) & "警告" ,REPT ( UNICHAR ( 8203 ) , 1 ) & "好")
然后讓表按照評(píng)價(jià)列升序排序的方式排序。

想要的效果實(shí)現(xiàn)了。

雖然很簡(jiǎn)單,但是卻很實(shí)用,借助 UNICHAR(8203)和 REPT 函數(shù)我們可以對(duì)度量值返回的文本結(jié)果按照我們想要的任何順序排序。
用在日期表中也是可以的。比如月份列可以這樣創(chuàng)建。
Month =REPT ( UNICHAR ( 8203 ) , 12 - MONTH ( 'Calendar'[Date] ) )& FORMAT ( 'Calendar'[Date] , "m月" )
這樣即使不使用按列排序,月份也會(huì)按照 1 - 12 月的循序排序。
關(guān)于這個(gè)組合的更多用法,大家可以發(fā)揮自己的想象力在 Power BI 中進(jìn)行各種嘗試。
《財(cái)務(wù)分析之道》助你脫離6大困境,具備20項(xiàng)超級(jí)能力
一數(shù)據(jù)分析師訓(xùn)練營(yíng) 課程表一
時(shí)間:2023年01月 班
主題:《財(cái)務(wù)分析之道》業(yè)財(cái)融合,F(xiàn)P&A。[報(bào)名中]
主題:《經(jīng)營(yíng)分析之道》目標(biāo)指標(biāo)體系拆解。[報(bào)名中]
時(shí)間:2024年03月 班
主題:《數(shù)據(jù)分析之道》十大模型,十大方法。[報(bào)名中]
主題:《財(cái)務(wù)分析之道》業(yè)財(cái)融合,F(xiàn)P&A。[報(bào)名中]
主題:《經(jīng)營(yíng)分析之道》目標(biāo)指標(biāo)體系拆解。[報(bào)名中]
咨詢老師,驗(yàn)證碼:data2023

點(diǎn)擊“閱讀原文”進(jìn)入學(xué)習(xí)中心
