Max()如何在Qifksense的表达式中的sumif中工作?

时间:2017-01-11 01:08:05

标签: max sumifs qliksense

我写了一个表达式来找出[福利]中排名前10位的[供应商支出]的总和。

Sum(if([H4 Benefit by Vendor] > Max([H4 Benefit by Vendor],11), [Spend by     Vendor],0))/sum([Spend by Vendor])

然而,这个表达不起作用。

我试图将表达式分成两个并进行测试。 (用0)

替换Max()部分
  1. 总和(如果([供应商的H4受益]> 0,[供应商支出],0))/总和([供应商支出])
  2. Max([供应商的H4受益],11)
  3. 他们独立工作。但是,在组合在一起时它无法工作。

    我可以知道有没有方法将这两者结合在一起?

1 个答案:

答案 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])