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

目录:

1. 概述编辑

1.1 版本

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

1.2 应用场景

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

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

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

1608627961111186.png

2. 使用说明编辑

2.1 使用位置


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

2.2 支持的逻辑函数

函数
语法定义示例
IFIF(boolean,number1/string1,number2/string2)判断函数IF(各门店净利润>0,"good","bad")
ANDAND(logical1,logical2,……)当所有参数的值为真时,返回1;当任意参数的值为假时,返回0。AND(1+7=8,5+7=12)
SWITCHSWITCH(表达式,值1,结果1,值2,结果2,……)如果表达式的结果是值1,整个函数返回结果1 如果表达式的结果是值2,整个函数返回结果2,如果表达式的结果是值3,整个函数返回结果3等等。SWITCH(1+2,3,"今天星期三",4,"今天星期四")
OROR(logical1,logical2,……)当所有参数的值为假时,返回0;当任意参数的值为真时,返回1。OR(1+7=9,5+7=11)

2.3 使用规则

IF 函数:参数类型相同时,结果返回第一个非空的参数类型;参数类型不同时,结果返回文本类型

SWITCH 函数:参数类型相同时,结果返回第2n+1(n>0)个非空的参数类型;参数类型不同时,结果返回文本类型

其他逻辑函数:返回布尔类型

3. 使用示例编辑

3.1 IF-条件判断

1)应用场景:用来完成非此即彼的判断。

2)语法

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

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

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

3)示例

要判断订单是否是优秀订单。使用内置数据集「销售DEMO>合同事实表」,新增列并输入公式为:IF(合同金额>3000,"优秀订单","普通订单"),如下图所示:

1608630720385341.png

公式说明:

公式
说明
IF(合同金额>3000,"优秀订单","普通订单")

若合同金额大于3000,则显示为 优秀订单,否则为普通订单。

更多公式示例:

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

4)注意事项

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

3.2 AND-逻辑与

1)应用场景:做多选题,必须所有选项都符合才是对(true),否则就是错(false)

2)语法

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

3)示例

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

4)注意事项

可使用任意个参数

3.3 多个条件判断(SWITCH)

1)应用场景:对多种情况进行判断,用于判断条件多的情况下。

2)语法

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


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

3)示例

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

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

4)注意事项

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

3.4 逻辑或(OR)

1)应用场景:任何一个参数逻辑值为 TRUE,即返回 TRUE;所有参数的逻辑值为 FALSE,才返回 FALSE

2)概述

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

3)示例

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

4)注意事项

参数为 bool 类型