[英]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.