历史版本13 :逻辑函数概述 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本

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

1.2 使用位置


使用位置
自助数据集新增列过滤
仪表板
添加计算字段

1.3 逻辑函数应用场景

逻辑计算允许确定某个特定条件为真还是假(布尔逻辑)。

例如,可能希望快速过滤出「合同金额」大于 3000 并且「购买数量」大于 10 的数据。

在自助数据集中使用过滤,过滤条件为:AND(合同金额>3000,购买数量>10),如下图所示:

1608627961111186.png

2. IF-条件判断编辑

1)概述

语法
IF(boolean,number1/string1,number2/string2)判断函数
参数1boolean

boolean为true时返回number1/string1,为false时返回number2/string2.第二个参数和第三个参数的类型必须相同。 

参数2number1/string1
参数3number2/string2

2)注意事项

IF 中三个参数,第二个和第三个参数相同类型,第一个为 bool

3)示例

示例数据:金额数据.xlsx

条件判断经常和其他逻辑函数叠加使用,函数写法详情参见:函数计算格式

例如需要根据凭证号计算金额,若「凭证号」字段不为空,则显示实际消耗金额,「凭证号」字段为空,则显示占用预算金额。

创建自助数据集,选择「金额数据」下的所有字段,如下图所示:

1606461032886979.png

新增「新增列」步骤,命名并输入公式:IF(ISNULL(凭证号)=1,占用预算金额,实际消耗金额),点击「确定」,如下图所示:

1606461095786780.png

公式说明:

公式
说明
ISNULL(凭证号)判断凭证号中是否全部都是NULL或者为空字符串,若是则返回 1 ,否则返回 0
IF(ISNULL(凭证号)=1,占用预算金额,实际消耗金额)

若凭证号为空,即 ISNULL(凭证号)=1 ,为 true,则输出占用预算金额

若凭证号不为空,则输出实际消耗金额

更多公式示例:

公式结果
备注
IF(true,2,8)2
IF(false,"first","second")second
IF(各门店净利润>0,"good","bad")当净利润>0等于good,净利润<0等于bad。

4. AND-逻辑与编辑

1)概述

语法
AND(logical1,logical2,……)当所有参数的值为真时,返回1;当任意参数的值为假时,返回0。
参数1logical1,logical2,……参数

2)注意事项

可使用任意个参数

3)示例

公式结果
备注
AND(1+7=8,5+7=12)1对应系统服务器时间为2020-10-23 15:36:25。
AND(1+7=8,5+7=11)0

5. 多个条件判断(SWITCH)编辑

1)概述

语法
SWITCH(表达式,值1,结果1,值2,结果2,……)如果表达式的结果是值1,整个函数返回结果1 如果表达式的结果是值2,整个函数返回结果2,如果表达式的结果是值3,整个函数返回结果3等等。
参数1表达式


参数2结果所有的结果1,结果2,结果3……必须为同类型数据。

2)注意事项

参数个数2n+1个,n>0,第2n个参数类型参数相同

3)示例

公式结果
备注
SWITCH(1+2,3,"今天星期三",4,"今天星期四")今天星期三

SWITCH 函数的详细应用参见: Switch函数 。

4. 逻辑或(OR)编辑

1)概述

语法
OR(logical1,logical2,……)当所有参数的值为假时,返回0;当任意参数的值为真时,返回1。
参数1logical1,logical2,……参数

2)注意事项

参数为 bool 类型

3)示例

公式结果
备注
OR(1+7=9,5+7=11)0
OR(1+7=8,5+7=11)1