历史版本30 :函数计算格式 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本

          FineBI版本                   JAR 包       功能变动
5.1--
5.1.72020-11-05函数释义优化&明确函数参数合法性
5.1.15-

公式支持复制到其他组件和数据表

注:仅支持快捷键Ctrl+c/Ctrl+v,不支持右键的复制黏贴。

1.2 功能简介

用户需要经常使用函数进行计算,因此正确有效的函数写法就显得非常重要。

本文介绍 FineBI 函数的组成和正确写法格式。

2. 函数组成编辑

FineBI 函数计算由四个内容组成:

内容说明
函数用于对字段中的值或成员进行转换的语句
字段 用户数据表中的维度或指标
运算符指明运算的符号
文本表达式按照写入内容表示的常量值

例如,假设有以下计算:

IF(合同金额>2000,"大订单","小订单")

对应计算内容如下所示:

内容
说明
函数IF
字段

合同金额

注:字段必须在左侧字段框中选择,不可手动输入。

运算符详情参见:计算运算符和优先级
文本表达式

字符串文本:"大订单"、"小订单"

数字文本:2000

注:并非所有计算都需要包含所有四个组件。例如,计算可能不包含文本表达式,例如计算SUM_AGG(合同金额)/SUM_AGG(购买数量) ,该计算只包含函数 SUM_AGG、除法运算符 (/) 以及字段「合同金额」和「购买数量」。

此外计算还可包含:

有关如何使用计算中的每个组件以及设置其格式的详细信息,请参见下面的部分。

3. 计算语法编辑

常用函数语法详情参见:常用函数语法FAQ

3.1 概览

组成部分
使用位置语法示例
函数新增列过滤 、 添加计算字段

函数语法详情查看对应函数:

数学和三角函数 、文本函数 、日期函数 、逻辑函数 、其他函数 

聚合函数 、快速计算函数 仅在添加计算字段是可用

SUM_AGG(合同金额)
字段
字段需要在左侧的字段选择区域点击选择合同金额(浅蓝色底)
运算符
SUM_AGG(合同金额)/SUM_AGG(购买数量)
文本表达式

数字文本写为数字。

字符串文本和日期文本带有引号。

布尔文本写为 true 或 false。

Null 文本写为 null。

2000

"大订单"、“2020-07-15”

true 或者 false

null

过滤组件作为参数参与计算添加计算字段

过滤组件值变成一个参数值,过滤组件的名字即为参数名

写法同「字段」一致

IF(合同金额>数值下拉过滤组件,"大订单","小订单")

3.2 函数语法

在 FineBI 中,函数是计算的主要组成部分。

1)函数在 FineBI 计算中显示为蓝色,每个函数都有特定的语法。

例如:在 FineBI 中创建仪表板,添加计算字段,在打开的计算编辑器中,单击函数位置的图标,将出现一个「函数列表」。紧接着是「字段选择位置」,从函数列表中选择函数时,最右侧的部分将更新,包含有关该函数的必需语法 (1) 和说明 (2) 的信息,并带有一个或多个示例 (3),如下图所示:

image.png

2)可以在计算中使用多个函数。例如:IF(SIGN(利润)=1,利润,0)

该计算中有两个函数:IF、SIGN。

函数包括在另一个函数中(即嵌套),上面示例就是这种情况。在这种情况下,将在计算 IF 函数之前先计算「利润」的 SIGN 函数,因为后者在括号内部。

3.3 字段语法

可以在计算中插入字段。函数的语法通常会指明应在计算中的何处插入字段。例如:SUM_AGG(array)。

例如:如果要计算平均合同单价,则计算将使用数据源中的「合同金额」和「购买数量」字段,输入公式:SUM_AGG(合同金额)/SUM_AGG(购买数量),在左侧的字段选择区域点击选择需要的字段,如下图所示:

1608541954605007.gif

注:字段在 FineBI 计算中显示为浅蓝色底。

3.4 运算符语法

若要创建计算,需要了解 FineBI 支持的运算符。运算符在 FineBI 计算中显示为黑色。

详情参见:计算运算符和优先级

3.5 文本表达式语法

此部分描述在 FineBI  计算中使用文本表达式的正确语法。

文本表达式「按原样」表示常量值。使用函数时,有时需要使用文本表达式表示数字、字符串、日期等。文本表达式在 FineBI 计算中显示为黑灰色。

详情参见本文 3.1.节。

4. 公式复用编辑

5.1.15 版本新增功能,支持跨表和跨组件复制写好的公式。

例如使用内置数据「KPI指标卡」,计算「合同金额」总计,新增计算字段,输入公式:TOTAL(SUM_AGG(合同金额),0,"sum"),如下图所示:

然后想要将公式复制在新的组件中使用,即可直接复制,BI 会根据复制的字段名自动匹配,并判断公式是否合法、字段是否丢失,匹配成功则可以直接使用,如下图所示:

1626232772871770.gif

注:若字段丢失则会标红提示。

5. 函数不合法注意事项编辑