公式字段用于计算不同类型的值,包括数值、文本值、日期值等。公式字段及其结果返回值具有与其相关联的某些数据类型,并且每种数据类型都有特定的运算符可供使用。必须要了解创建公式字段所需的字段类型以及数据类型和运算符之间的兼容性。例如,运算符 " * " (乘法)用于数字值而非文字值。
以下表格可帮助您了解数值函数所需的参数类型以及需要实现的语法类型。
函数 |
描述 |
用法 |
示例 |
Abs |
返回数字的绝对值。 |
Abs(数字) |
Abs(-42) 返回 42;Abs(+33) 返回 33 |
Ceil |
返回大于或等于输入值的最小整数。 |
Ceil(数字) |
Ceil(3.4) 返回 4;Ceil(-3.4) 返回 -3 |
Floor |
返回小于或等于输入值的最大整数。 |
Floor(数字) |
Floor(3.8) 返回 3;Floor(-3.4) 返回 -4 |
Naturallog |
返回数字的自然对数 |
Naturallog(数字) |
Naturallog(1) 返回 0.69 |
Base10log |
返回输入值以 10 为底的对数 |
Base10log(数字) |
Base10log(10) 返回 1.0 |
Max |
返回指定兼容数据类型列表中的最大值。 |
Max(数值1, 数值2,...) |
Max(3,1,5,2) 返回 5;Max(0,-4,-3,2) 返回 2 |
Min |
返回指定兼容数据类型列表中的最小值。 |
Min(数值1, 数值2,...) |
Min(3,1,5,8) 返回 1 ; Min(0,-4,-3,2) 返回 -4 |
Sqrt |
返回输入值的平方根。 |
Sqrt(数字) |
Sqrt(4) 返回 2;Sqrt(9) 返回 3 |
如要创建数值类型公式字段
以下表格可帮助您了解公式函数所需的参数类型及其函数语法。
| 函数 | 描述 | 用法 | 示例 | ||
| Len | 返回指定字符串的字符数。 | Len(字符串) | Len('abc') 返回 3;Len(' abc ') 返回 5 | ||
| Find | 返回字符串的第n个出现的文本字符串 | Find(字符串, 查询字符串, 数字) | Find('greenery','n',1) 返回 5 | ||
| Concat | 返回所有字符串的关联序列 | Concat(字符串, 字符串,...) |
|
||
| Contains |
|
Contains(字符串, 查询字符串) | Contains('abcdef','cd') 返回 true | ||
| Startswith | 若字符串以所查字符串开始,则返回 true,否则返回 false。 |
|
Startswith('abcdef','cd') 返回 false Startswith('abcdef','abc') 返回 true |
||
| Endswith | 若字符串以所查字符串结束,则返回 true,否则返回 false。 | Endswith(字符串, 查询字符串) | Endswith('abcdef','ab') 返回 false Endswith('abcdef','ef') 返回 true |
||
| Lower | 将字符串中的所有字符转换为小写。 | Lower(字符串) | Lower('APPLES') 返回 "apples" Lower('Apples') 返回 "apples" |
||
| Upper | 将字符串中的所有字符转换为大写。 | Upper(字符串) | Upper('apples') 返回 "APPLES" Upper('APPles') 返回 "APPLES" |
||
| Trim | 返回去掉首尾空格后的字符串。 |
|
Trim(' abcd ') 返回 "abcd" | ||
| Substring | 返回一个输入字符串的一部分,从这部分字符串的串首到指定长度。 |
|
Substring('abcdefg',4,7) 返回 "defg" | ||
| Replace | 用相应替代字符串来替换输入字符串中出现的查询字符串。 | Replace(字符串, 查询字符串, 替换字符串) | Replace('abcdefg','abc','xyz') 返回 "xyzdefg" | ||
| Tostring | 将任意类型参数转换为字符串类型。 | Tostring(泛型参数) | Tostring(3.4) 返回 "3.4" Tostring('') 返回 < 空 > |
如要创建字符串类型公式字段
以下表格可帮助您了解日期时间函数所需的参数类型及其语法类型。
| 函数 | 描述 | 用法 | 示例 | ||
| Newdate | 创建一个由年、月、日、时间组成的日期。 | Newdate(年,月,日,时,分'字符串') | Newdate( 2007 ,12 ,21 ,06 ,30 ,'AM' ) 返回 21/12/2007 06:30 AM"1 | ||
| Datepart | 返回日期时间表达式的日期值。 | Datepart(日期时间参数) | Datepart( Newdate( 2007 ,12 ,21 ,06 ,30 ,'AM' ) ) 返回 21/12/2007"1 | ||
| Timepart | 返回日期时间表达式的时间值。 | Timepart(日期时间参数) |
|
||
| Adddate | 返回指定日期增加 n(年/日/月/时/分)后所得出的值。 | Adddate(日期时间, 数字, 字符串) | Adddate( Newdate( 2007 ,12 ,21 ,06 ,30 ,'AM' ) ,2 ,'YEAR' ) 返回 21/12/2009 06:30 AM"2 | ||
| Subdate | 返回指定日期减少 n(年/日/月/时/分)后所得出的值。 | Subdate(日期时间, 数字, 字符串) | Subdate (Newdate(2007,12,21,06,30,'AM'),2,'YEAR' 返回 "21/12/2005 06:30 AM"2 | ||
| Now | 返回表示当前时刻的日期/时间。 | Now() | Now() 返回 2022-05-19 09:40 AM | ||
| Datecomp | 比较两个时间,以分钟为单位返回时间差,如果第一个日期较大则返回值为正,反之为负。 | Datecomp(日期时间, 日期时间) | Datecomp( Newdate(2009 ,05 ,19 ,11 ,30 ,'AM') , Newdate(2009 ,05 ,19 ,11 ,00 ,'AM') ) 返回 "30" 3 | ||
| Dayofmonth | 返回给定日期对应的一月中的哪一日。 |
|
Dayofmonth(Newdate(2009,05,19,11,30,'AM')) 返回 "19.0" | ||
| Hour | 返回给定日期对应的小时。 | Hour(日期时间) | Hour(Newdate(2009,05,19,11,30,'AM')) 返回 "11.0" | ||
| Minute | 返回给定日期对应的分钟。 | Minute(日期时间) | Minute(Newdate(2009,05,19,11,30,'AM')) 返回 "30.0" | ||
| Month | 返回给定日期对应的月份。 | Month(日期时间) | Month(Newdate(2009,05,19,11,30,'AM')) 返回 "5.0" | ||
| Year | 返回给定日期对应的年份。 | Year(日期时间) | Year(Newdate(2009,05,19,11,30,'AM')) 返回 "2009.0" | ||
| Weekday | 返回输入日期对应一周中的哪一天 (1-7),1 代表星期天,2 代表星期一,依次类推。 |
|
Weekday(Newdate(2009,05,19,11,30,'AM')) 返回 "3.0".(因为 5 月 19 日是星期四)4 |
如要创建时间日期类型公式字段
以下表格可帮助您了解布尔函数所需的参数类型以及语法类型。
| 函数 | 描述 | 使用 | 示例 | ||
| If | 根据给定逻辑条件的值,返回两个值中的一个。如果布尔测试为真,则 If() 返回 true ,否则返回 false。 |
|
If(8>7,1,0) 返回 "1.0" If(8>7,'True','False') 返回 "True" |
||
| And | 所有表达式为真,则返回true;只要一个表达式为假,则返回false。 | And(布尔值, 布尔值,...) | And(2>1,5>3,7<8) 返回 "true" And(2>1,5>3,7>8) 返回 "false" |
||
| Or | 如果任何一个表达式为真,则返回 true。如果所有表达式均为假,则返回false。 | Or(布尔值, 布尔值,...) | Or(2>1,3>5,7>8) 返回 "true" Or(1>2,3>5,7>8) 返回 "false" |
||
| Not | 返回给定表达式的逻辑否定,即如果表达式为真,则返回false。 | Not(布尔值) | Not(false) 返回 "true" Not(true) 返回 "false" |
* 泛型参数可表示任何数据类型 — 数字、字符串、日期时间(包括正常日期)或布尔值。返回类型取决于选定数据类型。例如,如果泛型数字类型为数字,则返回类型应该是数值而不是字符串或布尔值。
如要创建布尔值类型公式字段
下表显示了创建公式的功能性参考及其可用参数。
| 函数名 | 必需参数的数目 | 参数数据类型 | 返回类型 |
| Abs | 1 | 数字 | 数字 |
| Ceil | 1 | 数字 | 数字 |
| Floor | 1 | 数字 | 数字 |
| Naturallog | 1 | 数字 | 数字 |
| Base10log | 1 | 数字 | 数字 |
| Max | 多个 | 全数字 | 数字 |
| Min | 多个 | 全数字 | 数字 |
| Sqrt | 1 | 数字 | 数字 |
| 函数名 | 必需参数的数目 | 参数数据类型 | >返回类型 |
| Len | 1 | 字符串 | 数字 |
| Find | 3 | 字符串:字符串:数字 | 数字 |
| Concat | 多个 | 全部字符串 | 字符串 |
| Contains | 2 | 字符串:字符串 | 布尔型 |
| Startswith | 2 | 字符串:字符串 | 布尔型 |
| Endswith | 2 | 字符串:字符串 | 布尔型 |
| Lower | 1 | 字符串 | 字符串 |
| Upper | 1 | 字符串 | 字符串 |
| Trim | 1 | 字符串 | 字符串 |
| Substring | 3 | 字符串:数字:数字 | 字符串 |
| Replace | 3 | 字符串:字符串:字符串 | 字符串 |
| Tostring | 1 | 任何数据类型 | 字符串 |
| 函数名 | 必需参数的数目 | 参数数据类型 | 返回类型 |
| Newdate | 6 | Number:Number:Number:Number:Number:String | 日期时间 |
| Datepart | 1 | 日期时间 | 字符串 |
| Timepart | 1 | 日期时间 | 字符串 |
| Adddate | 3 | 日期时间:数字:字符串 | 日期时间 |
| Subdate | 3 | 日期时间:数字:字符串 | 日期时间 |
| Now | 0 | - | 日期时间 |
| Datecomp | 2 | 日期时间:日期时间 | 数字 |
| Dayofmonth | 1 | 日期时间 | 数字 |
| Hour | 1 | 日期时间 | 数字 |
| Minutes | 1 | 日期时间 | 数字 |
| Month | 1 | 日期时间 | 数字 |
| Year | 1 | 日期时间 | 数字 |
| Weekday | 1 | 日期时间 | 数字 |
| 函数名 | 必需参数的数目 | 参数数据类型 | 返回类型 |
| If | 3 | 布尔值:泛型数据: 泛型数据 | 泛型 |
| And | 多个 | 全布尔值 | 布尔型 |
| Or | 多个 | 全布尔值 | 布尔型 |
| Not | 1 | 布尔型 | 布尔型 |