簡體   English   中英

Power BI / DAX:按計算列對計算表進行排序

[英]Power BI / DAX: Sort Calculated Table by Calculated Column

我有一個 Power BI 數據模型,其中一個 DAX 計算表用作維度,該維度使用來自每個值多次出現的事實表中的 VALUES 計算,因此它是 1:M 關系。

在我的報告中,我想將計算出的表格值用作切片器,其中的選項按字母順序以外的特定順序顯示。 因此,在計算表中,我創建了一個計算列,該列根據 SWITCH 函數為每一行分配一個數字。 但是,當我嘗試在 Power BI 中“按列排序”時,它會拋出一個錯誤,表明它是一個循環引用。 我還能如何定義排序順序?

這是一個示例數據/計算表:

“來源”事實表:

Dimension_Values
a_order_third
a_order_third
b_order_first
b_order_first
c_order_second
c_order_second

Calculated_Dim_Table = VALUES('Source'[Dimension_Values])

Dimension_Values
a_order_third
b_order_first
c_order_second

Calculated_Order_Column = SWITCH('Calculated_Dim_Table'[Dimension_Values],"b_order_first",1,"c_order_second",2,"a_order_third",3)

*按 'Calculated_Dim_Table[Calculated_Order_Column] 對 'Calculated_Dim_Table'[Dimension_Values] 進行排序,以便所需的輸出為

Dimension_Values Calculated_Order_Column
b_order_first 1
c_order_second 2
a_order_third 3

問題:Power BI 說這是創建循環依賴 - 是否有另一種方法來定義列的排序順序而不引用它以避免循環依賴?

我認為它會引發循環引用錯誤,導致 DAX 內部決定執行順序。 在這種情況下,DAX 希望在加載時對維度值進行排序,但它不能導致它依賴於計算列 thst 又依賴於維度值。 所以它確實是一個循環引用。 我建議你在 PQ 中這樣做,然后加載兩個表,然后你可以在 t2 中毫無問題地進行排序。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM