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

Only - 图表函数

Only() 用于返回一个值(如果从聚合数据得出一个且只有一个可能值)。例如,如果有多个产品的单价为 9,则只搜索单价为 9 的产品将会返回 NULL

语法:  

Only([{SetExpression}] [TOTAL [<fld {,fld}>]] expr)

返回数据类型:

参数:  

参数
参数 说明
expr 表达式或字段包含要度量的数据。
SetExpression 聚合函数会默认聚合选择项定义的可能记录集合。可选记录集合可由集合分析表达式定义。
TOTAL

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

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

定义聚合范围

提示注释如果在样本数据中有多个可能的值时您想要 NULL 结果,则使用 Only()

示例和结果:  

数据
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
示例和结果
示例 结果

Only({<UnitPrice={9}>} Product)

BB,因为这是 Product 为 9 的唯一 UnitPrice

Only({<Product={DD}>} Customer)

Betacab,因为它是销售 Product 的唯一 Customer,被称为“DD”。

Only({<UnitPrice={20}>} UnitSales)

UnitPrice 为 20 的 UnitSales 数量为 2,因为只有一个 UnitPrice =20 的 UnitSales 值。

Only({<UnitPrice={15}>} UnitSales)

NULL,因为有两个 UnitPrice = 15 的 UnitSales 值。

示例中所使用的数据:

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 '|');

本页面有帮助吗?

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