我有一个相对简单的问题:
我有一个数据集,包含一个id(不是用于输入但是用于特定对象),对象的年龄和功率值。
所以我得到的是很多条目,其中特定年龄的特定年龄有权力。
我想创建一个图表,显示所有对象(ID)上最高年龄的所有功率值的平均值。
在SQl中,这基本上看起来像SELECT power WHERE max(age)。
在qlik视图中,有人能以聪明的方式提出一个明智的方法吗?
我已经尝试将sum()函数与total一起使用,并在所有id上使用aggr,但我不断得到奇怪的结果。
我尝试使用set分析和aggr({} power,id),但它不起作用。
编辑:我试过了
aggr(if (age= max(age), power), id)
但是只要我选择一个包含多个条目(不同年龄)的ID,就不会显示任何数据。删除aggr函数时也一样。
并且:
Avg({$<age = max(age)>}Power)
根本不显示任何内容(它也显示错误)
还尝试过:
Sum({$ <age= {$(=max(age))} > } power )
仍然没有。
由于 儒略
答案 0 :(得分:1)
用firstordervalue解决了它:
avg(aggr(firstsortedvalue (power, -age), id))
答案 1 :(得分:0)
是设置分析应该有效。 类似的东西:
Avg({$<age = max(age)>}Power)
或者,您也可以使用条件和:
if (age = max(age), avg(Power))
Aggr用于在具有'group by'条件的记录列表上运行统计信息,如SQL中所示