我写了一个表达式来找出[福利]中排名前10位的[供应商支出]的总和。
Sum(if([H4 Benefit by Vendor] > Max([H4 Benefit by Vendor],11), [Spend by Vendor],0))/sum([Spend by Vendor])
然而,这个表达不起作用。
我试图将表达式分成两个并进行测试。 (用0)
替换Max()部分他们独立工作。但是,在组合在一起时它无法工作。
我可以知道有没有方法将这两者结合在一起?
答案 0 :(得分:0)
问题是将汇总值与行值进行比较 - 您不能直接执行此操作,但根据此thread有几个选项。
我这样做的方法是在加载脚本
上设置一个变量Temp:
load
max([H4 Benefit by Vendor]) as maxB
resident TABLENAME;
LET vBenefitMax = peek('maxB');
drop table Temp;
然后在If
声明中引用它。
Sum(if([H4 Benefit by Vendor] > vBenefitMax, [Spend by Vendor],0))
/ sum([Spend by Vendor])