我有两张桌子:一张客户(“捐助者”)和一张交易(“Trans”)。在捐赠者中,我想要一个“总计”列,按特定捐赠者 ID 汇总所有交易,我将在标准 Excel 表中计算如下:
=SUMIF(Trans[Donor ID],[@ID],Trans[Amt])
简单的!如何使用 DAX 公式做同样的事情?我想
=CALCULATE(SUM(Trans[Amt]),Trans[Donor ID]=[ID])
会这样做,但我得到了错误
Column "ID" cannot be found or may not be used in this expression.
奇怪的是,当我使用
=CALCULATE(SUM(Trans[Amt]),Trans[Donor ID]=3893)
我确实得到了 ID 3893 的总数。
避开计算,我确实发现这有效:
=SUMX(FILTER(Trans, Trans[Donor ID]=[ID]),[Amt])
...但它只允许一个过滤器,我需要能够添加更多过滤器,但是:
=SUMX(CALCULATETABLE(Trans, Trans[Donor ID]=[ID]),[Amt])
...(我理解这就像 FILTER 但允许倍数)不起作用。
你能确定我做错了什么吗?