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

FirstSortedValue - 图表函数

FirstSortedValue() 将返回来自 value 指定表达式的值,相当于 sort_weight 参数排序的结果,例如,单价最低的产品名称。排序顺序中的第 n 个值,可在 rank 中指定。如果在指定 rank 下多个结果值共享同一 sort_weight,则此函数返回 NULL

语法:  

FirstSortedValue([{SetExpression}] [DISTINCT] [TOTAL [<fld {,fld}>]] value, sort_weight [,rank])

返回数据类型:

参数:  

参数
参数 描述
value 输出字段。 此函数用于查找表达式 value 的值,相当于 sort_weight 的排序结果。
sort_weight

输入字段。 该表达式包含要排序的数据。找到 sort_weight 的第一个(最低)值,由 value 表达式的对应值确定。如果在 sort_weight 前面加一个减号,则此函数会返回最后一个(最高)排序值。

rank

通过指定一个大于 1 的 rank “n”,您会获得第 n 个排序值。

SetExpression 聚合函数会默认聚合选择项定义的可能记录集合。可选记录集合可由集合分析表达式定义。
DISTINCT 如果在函数参数前出现单词 DISTINCT,则将忽略计算该函数参数生成的副本。
TOTAL

如果在函数参数前面出现单词 TOTAL,则计算给出当前选择项的所有可能值,而不只是属于当前维度值的那些值,即它会忽略图表维度。

通过使用 TOTAL [<fld {.fld}>](其中 TOTAL 限定符后跟一个或多个字段名称作为图表维度变量的子集的列表),您可以创建总可能值的子集。

定义聚合范围

示例和结果:  

数据
CustomerProductUnitSalesUnitPrice
AstridaAA416
AstridaAA1015
AstridaBB99
BetacabBB510
BetacabCC220
BetacabDD-25
CanutilityAA815
CanutilityCC-19
示例和结果
示例结果
firstsortedvalue (Product, UnitPrice)

BB,这是具有最低UnitPriceProduct (9)。

firstsortedvalue (Product, UnitPrice, 2)

BB,这是具有第二低ProductUnitPrice (10)。

firstsortedvalue (Customer, -UnitPrice, 2)

Betacab,这是具有第二高UnitPriceProductCustomer (20)。

firstsortedvalue (Customer, UnitPrice, 3)

NULL,因为有两个Customer值(AstridaCanutility)有相同的rank(倒数第三)UnitPrice (15)。

使用 distinct 限定符来确保不会出现意外的空结果。

firstsortedvalue (Customer, -UnitPrice*UnitSales, 2)

Canutility,这是具有第二高销售订单值(UnitPrice 乘以 UnitSales)的 Customer (120)。

示例中所使用的数据:

ProductData:

LOAD * inline [

Customer|Product|UnitSales|UnitPrice

Astrida|AA|4|16

Astrida|AA|10|15

Astrida|BB|9|9

Betacab|BB|5|10

Betacab|CC|2|20

Betacab|DD||25

Canutility|AA|8|15

Canutility|CC||19

] (delimiter is '|');

本页面有帮助吗?

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