Above函数如何使用的?

0
Above函数如何使用的?Above(sum(金额),0,4)和Above(sum(金额),4)分别代表什么意思?
已邀请:
1

曹浩 - QlikView顾问、QV讲师 2015-07-21 回答

该函数为图表内部记录函数,返回当前表达式上一行的值,后面的数字为偏移量。
 
具体在帮助文档中可以查到:
Above([ total ] expression [ , offset [,n ]])

返回使用图表的维度值评估的表达式值,因为维度值显示在表格,位图图表或图表的垂直表等同物的列段的当前行之上的行(实际上,所有 QlikView 图表均拥有垂直表等同物,但拥有更复杂结构的透视表除外)。

列段的第一行会返回空值,因为其上没有行。

如果图表是一维的或如果表达式前面有一个 total 限定符,当前的列片断总是与整列相等。

如果表格或类似物有多个垂直维度,当前的列片断将只包括值与全部维度列的当前行相同的行,除了显示字段排序间上一次维度的列之外。透视表的内部字段排序只需依据从左至右的维度顺序定义。对于其他图表类型, 这可在图表属性:排序对话框中操纵。

指定大于 1 的偏移量可让您移动表达式评估至当前行之上的行。负偏移量值实际会促使above函数等同于带有相应正偏移量值的below函数。指定 0 偏移量会评估当前行上的表达式。递归调用将返回空值。

通过指定第三个参数n 大于 1,函数返回的不是一个值,而是一连串n值,每个值对应一个从原始单元格开始向上计数的n表格行。此时,该函数用作任何特殊图表范围函数的参数。

示例:

sum( Sales ) / above( sum( Sales ))

above( sum( Sales ), 2 )

above( total sum( Sales ))

rangeavg (above(sum(x),1,3)) 返回评估当前行上方三行的 sum(x) 函数的三个结果的平均值。

要回复问题请先登录注册