PowerPivot DAX 多对多关系
PowerPivot DAX many-to-many relationship
我有一个 PowerPivot 模型,我正在尝试从包含多个订单数量等级及其关联的附加费百分比的查找 table 中检索相应的附加费百分比(作为 VendorID 和 OrderQty 的函数)。 table 都不包含任何行的唯一值(这是多对多的情况)。
换句话说,我正在尝试使用计算列方法填充下面 table 中的 "SurchargePct" 列:
VendorID OrderQty SurchargePct
1 30 5%
1 20 10%
2 55 15%
2 80 3%
...基于以下 table 中的相应等级:
VendorID Tier MinQty MaxQty SurchargePct
1 A 15 24 10%
1 B 25 99 5%
2 A 40 59 15%
2 B 60 89 3%
谢谢!
在计算列中试试这个表达式:
=
CALCULATE (
MAX ( TableB[SurchargePct] ),
FILTER (
TableB,
EARLIER ( TableA[OrderQty] ) >= [MinQty]
&& TableA[OrderQty] <= [MaxQty]
&& TableB[VendorID] = EARLIER ( TableA[VendorID] )
)
)
其中 TableA
是您的第一个 table,TableB
是第二个。
如果有帮助请告诉我。
我有一个 PowerPivot 模型,我正在尝试从包含多个订单数量等级及其关联的附加费百分比的查找 table 中检索相应的附加费百分比(作为 VendorID 和 OrderQty 的函数)。 table 都不包含任何行的唯一值(这是多对多的情况)。
换句话说,我正在尝试使用计算列方法填充下面 table 中的 "SurchargePct" 列:
VendorID OrderQty SurchargePct
1 30 5%
1 20 10%
2 55 15%
2 80 3%
...基于以下 table 中的相应等级:
VendorID Tier MinQty MaxQty SurchargePct
1 A 15 24 10%
1 B 25 99 5%
2 A 40 59 15%
2 B 60 89 3%
谢谢!
在计算列中试试这个表达式:
=
CALCULATE (
MAX ( TableB[SurchargePct] ),
FILTER (
TableB,
EARLIER ( TableA[OrderQty] ) >= [MinQty]
&& TableA[OrderQty] <= [MaxQty]
&& TableB[VendorID] = EARLIER ( TableA[VendorID] )
)
)
其中 TableA
是您的第一个 table,TableB
是第二个。
如果有帮助请告诉我。