跳到主要内容 跳到补充内容

WRank - 脚本函数

WRank() 计算加载脚本中表的行,并针对每一行显示加载脚本中计算的字段值的相对位置。当计算表的值时,该函数将结果与包含当前分区的其他行的结果比较,然后返回片段中当前行的排名。

表中的分区

显示列片段的表格

WRank 只能在 Window 函数中使用。Window 函数必须包括排序类型和排序表达式。排序将应用于排序表达式。

语法:  

WRank ([mode[, fmt]])

返回数据类型:

参数:  

参数
参数 说明
mode (可选)指定函数结果的数字呈现形式。
fmt (可选)指定函数结果的文本呈现形式。
TOTAL

如果表是一维的,或者脚本前面有 TOTAL 限定符,则函数将沿整列求值。如果表格或表格等同物有多个垂直维度,当前分区数据将只包括值与所有维度列的当前行相同的行,但按内部字段排序显示最后维度的列除外。

排行以对偶值形式返回,在每一行拥有一个唯一排行的情况下,排行是一个介于 1 和当前分区数据行数之间的整数。

当多行共享同一个排名时,文本和数字呈现形式可使用 modefmt 参数进行控制。

mode

第一个参数 mode 可获取以下值:

mode
说明
0(默认)

如果共享组中的全部排行处在整个排行中间值的下半部分,全部行都获得共享组的最低排行。

如果共享组中的全部排行处在整个排行中间值的上半部分,全部行都获得共享组的最高排行。

如果共享组中的排行跨越整个排行的中间值,全部行都获得整个分区中最高和最低排行的平均值。

1 全部行的最低排行。
2 全部行的平均排行。
3 全部行的最高排行。
4 第一行的最低排行,然后每一行都提高一位。
fmt

第二个参数 fmt 可获取以下值:

fmt
说明
0(默认) 全部行中的低值 - 高值(如 3 - 4)。
1 全部行的高值。
2 第一行的低值,以后各行都为空白。

mode 4 和 fmt 2 的行顺序由表字段的加载顺序决定。

示例 - 添加已排序字段

示例 - 使用 fmt 添加排名字段以获得一个数位的结果

示例 - 添加具有多个分区的已排名字段

限制

WRank 存在以下限制:

  • 如果您的 fmt 值为 0,并且希望将双重结果的文本部分用于 WRank,则必须将 Text()Window(WRank) 一起使用。例如:Text(Window(WRank(0), Unit, 'DESC', Age)) as UnitWRankedByAgeText

本页面有帮助吗?

如果您发现此页面或其内容有任何问题 – 打字错误、遗漏步骤或技术错误 – 请告诉我们如何改进!

加入分析现代化计划

Remove banner from view

使用分析现代化计划实现现代化,同时不损害您宝贵的 QlikView 应用程序。 单击此处 了解更多信息或联系: ampquestions@qlik.com