工作流函数参考
以下函数类型可用于在 Live Query 中转换数据。数据类型决定可使用的函数。
有关详细信息,请访问支持的数据类型。
本指南助您快速参考在 Live Query 表达式编辑器中可使用的函数。如果您需要更多信息和示例,请访问具体函数类别的页面,页面链接可在每个部分中找到。
条件
条件函数允许您使用 IF 语句执行操作或计算。如需了解参数并获取示例,请转至 工作流条件函数。
IF condition THEN t ELSE f ENDIF
IF c THEN t ELSE f ENDIF:如果条件 c 为 true,则返回 t;否则,返回 f。
IF c THEN t1 ELSEIF c2 THEN t2 ELSE f ENDIF
IF c THEN t ELSEIF c2 THEN t2 ELSE f ENDIF:如果 c 为 true,则返回 t1;否则,如果 c2 为 true,则返回 t2;否则,返回 f。
IIF
IIF(bool, x, y):如果布尔值为 true,则返回 x,否则返回 y。
Switch
Switch(Value,Default,Case1,Result1,...,CaseN,ResultN):将值与一系列条件进行比较,并返回相应的结果。
转换
转换函数将数字转换为字符串或者将字符串转换为数字。如需了解参数并获取示例,请转至 工作流转换函数。
CharFromInt
CharFromInt(x):返回与输入数字 x 相匹配的 Unicode® 字符。
注意
此函数不适用于 Live Query for Databricks。
ToDegrees
ToDegrees(x):通过 (x)rad × 180/π 计算将数值弧度值 (x) 转换为度数。请注意,x 必须是一个数值,不能包含任何弧度符号 (rad)。
ToNumber
ToNumber(x, [bIgnoreErrors], [keepNulls], [decimalSeparator]):将字符串 (x) 转换为数字。
ToRadians
ToRadians(x):通过 (x)° × π/180 计算,将数值度数值 (x) 转换为弧度值。请注意,x 必须是数值,不能包含度数符号 (°)。
ToString
ToString(x, numDec, [addThousandsSeparator], [decimalSeparator]):使用小数位数参数 numDec 将数值参数 (x) 转换为字符串。默认选项使用句点作为小数分隔符。
日期时间
日期时间函数允许您对日期和时间值执行操作或计算。如需了解参数并获取示例,请转至 工作流日期时间函数。
DateTimeAdd
DateTimeAdd(dt,i,u):将一个具体时间间隔添加到日期时间值中。
DateTimeDay
DateTimeDay(dt):返回日期时间值中当日的数字值。
DateTimeDiff
DateTimeDiff(dt1,dt2,u):第一个参数减去第二个参数,并返回它们之间的整数差值。时间间隔以指定时间单位为单位返回一个数字,而不是返回字符串。
DateTimeFirstOfMonth
DateTimeFirstOfMonth():返回月份的第一天,从午夜开始。
DateTimeFormat
DateTimeFormat(dt, f):将日期时间数据 df 转换为另一种指定的格式 f。
注意
此函数不适用于 Live Query for Databricks。
DateTimeHour
DateTimeHour(dt):返回日期时间值中小时部分的值。
DateTimeLastOfMonth
DateTimeLastOfMonth():返回当前月份的最后一天,将时钟设置为当天结束前的一秒 (23:59:59)。
DateTimeMinutes
DateTimeMinutes(dt):返回日期时间值中分钟部分的值。
DateTimeMonth
DateTimeMonth(dt):返回日期时间值中月份的数字值。
当前日期时间
DateTimeNow():返回当前系统的日期和时间。
DateTimeParse
DateTimeParse(dt, f):将具有指定格式和语言的日期字符串转换为标准 ISO 格式 (yyyy-mm-dd HH:MM:SS)。
注意
此函数不适用于 Live Query for Databricks。
DateTimeQuarter
DateTimeQuarter(dt,[Q1Start]):返回日期时间 (YYYY-MM-DD) 值所在年份的季度数值。使用可选的数字参数表示第一季度 (Q1) 的起始月份。
DateTimeSeconds
DateTimeSeconds(dt):返回日期时间值中秒部分的值。
DateTimeToday
DateTimeToday():返回今天的日期。
DateTimeTrim
DateTimeTrim(dt, f):删除日期时间值中不需要的部分,并返回修改后的日期时间值。
注意
此函数不适用于 Live Query for Databricks。
DateTimeYear
DateTimeYear(dt):返回日期时间值中年份的数字值。
ToDate
ToDate(x):将字符串、数字或日期时间转换为日期。
ToDateTime
DateTimeTrim(ToDateTime(x), t):将字符串、数字或日期值转换为日期时间。
金融
金融函数应用金融算法或数学计算。如需了解详情,请转至 工作流金融函数。
FinanceCAGR
FinanceCAGR(BeginningValue, EndingValue, NumYears):计算复合年增长率:按年计算的几何平均增长率。
FinanceEffectiveRate
FinanceEffectiveRate(NominalRate, PaymentsPerYear):计算有效年利率:贷款或金融产品的利率,由名义利率重述为年复利利率,以拖欠方式支付。
FinanceFV
FinanceFV(Rate, NumPayments, PaymentAmount, PresentValue, PayAtPeriodBegin):计算投资的未来价值:假设以特定的利率或收益率,资产在未来指定时间的价值。
FinanceIRR
FinanceIRR(Value1, Value2):计算内部收益率,即投资成本与投资收益相匹配的利率。这意味着该投资的所有收益都体现在货币的时间价值中,并且在该利率下,该投资的净现值为零。
注意
此函数不适用于 Live Query for Databricks。
FinanceNominalRate
FinanceNominalRate(EffectiveRate, PaymentsPerYear):计算名义年利率:如果复合频率(如一个月)与基本时间单位(通常为一年)不相同,则将利率称为名义利率。
FinanceNPER
FinanceNPER(Rate, PaymentAmount, PresentValue, FutureValue, PayAtPeriodBegin):计算投资或贷款的期数。
FinancePMT
FinancePMT(Rate, NumPayments, PresentValue, FutureValue, PayAtPeriodBegin):计算贷款的还款额。
FinancePV
FinancePV(Rate, NumPayments, PaymentAmount, FutureValue, PayAtPeriodBegin):计算投资的现值:为反映货币的时间价值和投资风险等其他因素而经过折现的一笔未来付款或一系列未来付款在给定日期的价值。
FinanceXIRR
FinanceXIRR(Value1, Date1, Value2, Date2):计算投资在指定日期的内部收益率。
注意
此函数不适用于 Live Query for Databricks。
FinanceXNPV
FinanceXNPV(Rate, Value1, Date1, Value2, Date2):计算投资在指定日期的净现值。
数学
数学函数执行数学计算。如需了解参数并获取示例,请转至工作流数学函数。
ABS
ABS(x):返回 x 的绝对值。这是某数字和 0 的距离。该值始终为正。
ACOS
ACOS(x):返回一个数(x)的反余弦值。反余弦是余弦为 (x) 的角度。
ASIN
ASIN(x):返回一个数(x)的反正弦值。反正弦是正弦为 (x) 的角度。
ATAN
ATAN(x)返回一个数(x)的反正切值。反正切是正切为 (x) 的角度。返回的角度以 -pi/2 到 pi/2 范围内的弧度表示。
ATAN2
ATAN2(y, x):返回 y 和 x 的反正切值(即 [y/x] 的反正切值)。
Average
Average(n1, ...):返回一组数字的平均值。NULL 值被视为 0 并在计算平均值时考虑在内。
AverageNonNull
AverageNonNull(n1, ...):返回一组数字的平均值。计算中不包括 Null 值。该计算仅适用于数字类型的数据。
CEIL
CEIL(x, [mult]):返回数值 (x) 向上舍入为大于或等于 x 的 (mult) 的最小倍数。参数 (mult) 必须是大于 0 的数字。如果未指定 (mult),则函数返回大于或等于 (x) 的最小整数。
COS
COS(x):返回给定角度 (x) 的余弦值。x 的单位必须是弧度。
EXP
EXP(x):返回 e 的 x 次幂(e^x)。
FLOOR
FLOOR(x, [mult]):返回一个数值 (x),该值在满足小于或等于 x 同时,应为 (mult) 的最大倍数。参数 (mult) 必须是大于 0 的数字。如果未指定 (mult),函数将返回小于或等于 (x) 的最大整数,如下面第一个示例所示。
LOG
LOG(x):返回数字 (x) 的自然对数。x 应为正数。
LOG10
LOG10(x):返回数字 (x) 的以 10 为底的对数。x 应为正数。
Median
Median(...):计算一个或多个(可能未排序)值的中值。
注意
此函数不适用于 Live Query for Databricks。
Mod
Mod(n,d):Modulo 是一个数 (n) 除以另一个数 (d) 的整数运算。
PI
PI():返回 15 位精度的常量 PI(圆周率)的值。
POW
POW(x, e):返回数字 (x) 的 (e) 次幂。
RAND
RAND():返回一个大于或等于 0 且小于 1 的随机数。
RandInt
RandInt(n):返回 0 和指定参数 (n) 之间的一个随机整数。
Round
Round(x, mult):返回 x 四舍五入后最接近指定数字 mult 倍数的值。
SIN
SIN(x):返回给定角度 (x) 的正弦值。x 的单位必须是弧度。
SmartRound
SmartRound(x):返回数值 (x),该值已四舍五入到根据 (x) 的大小动态确定的最接近倍数。
SQRT
SQRT(x):返回数字 (x) 的平方根。
TAN
TAN(x):返回给定角度 (x) 的正切值。x 的单位必须是弧度。
TANH
TANH(x):返回数字 (x) 的双曲正切值。
最小值/最大值
最小值或最大值函数用于找出一组值中的最小值和最大值。如需了解详情,请转至 工作流最小值/最大值函数。
Between
BETWEEN(x, min, max):测试一个值 (x) 是否介于两个其他值(最小值和最大值)之间,包含最小值和最大值。如果 x 介于最小值和最大值之间,则返回 TRUE。如果 x 未介于最小值和最大值之间,则返回 FALSE。
Bound
Bound(x, min, max):如果 (x < min),则返回 min;否则,如果 (x > max),则返回 max;否则,返回 (x)。
最大值
Max(v0, v1,..., vn):返回列表中的最大值。
最小值
Min(v0, v1,..., vn):返回列表中的最小值。
运算符
运算符是代表一个操作的字符。使用算术运算符执行数学计算,或使用布尔运算符处理真/假值。如需了解详情,请转至 工作流运算符。
加
+:加法。
布尔值 AND - 关键字
AND:组合 2 个布尔值。如果两个组合值均为 True,则结果为 True;如果其中任一值为 False,但非 NULL,则结果为 False;如果其中任一值为 NULL,则结果为 NULL。
布尔值 AND
&&:组合 2 个布尔值。如果两个组合值均为 True,则结果为 True;如果其中任一值为 False,但非 NULL,则结果为 False;如果其中任一值为 NULL,则结果为 NULL。
NOT (布尔值NOT关键字)
NOT:接受 1 项输入。如果输入为 True,则返回 False。如果输入为 False,则返回 True。如果输入为 NULL,则返回 NULL。
布尔值 NOT
!:接受 1 项输入。如果输入为 True,则返回 False。如果输入为 False,则返回 True。如果输入为 NULL,则返回 NULL。
OR (布尔值OR关键字)
OR:组合 2 个布尔值。如果两个值的任何一个或两个都为 true,则结果为 True。如果任一值为 NULL,则返回 NULL。
布尔值OR
||:组合 2 个布尔值。如果两个值的任何一个或两个都为 true,则结果为 True。如果任一值为 NULL,则返回 NULL。
除法
/:除法。
等于
=:等于。
大于
>:大于。
大于或等于
>=:大于或等于。
小于
<:小于。
小于或等于
<=:小于或等于。
乘法
*:乘法。
不等于
!=:不等于
减法
-:减法。
值在列表关键字 - IN (...)
IN:测试值是否在列表中。
值不在列表关键字 - NOT IN (...)
NOT IN:测试值是否不在列表中。
特殊
这些函数可执行多种专用操作,并适用于所有数据类型。如需了解参数并获取示例,请转至 工作流特殊函数。
NULL
NULL():返回 Null 值。
字符串
字符串函数对文本数据执行操作。使用字符串函数清理数据、将数据转换为其他格式或大小写、对数据进行度量计算或执行其他操作。如需了解参数并获取示例,请转至 工作流字符串函数。
Contains
Contains(String, Target, CaseInsensitive=1):在一个字符串中搜索出现的特定字符串。如果 (String) 包含 (Target),则返回 True,否则返回 False。
CountWords
CountWords(string):返回指定字符串中的单词计数。单词由空格分隔的字符定义。
注意
此函数不适用于 Live Query for Databricks。
EndsWith
EndsWith(String, Target, CaseInsensitive=1):检查字符串是否以特定的字符串结尾。如果 (String) 以 (Target) 结尾,则返回 True;否则,返回 False。默认情况下不区分大小写。
FindNth
FindNth(Initial String, Target, Instance):在初始字符串中查找目标字符串的实例(第 n 次出现),并返回实例的位置(索引从 0 开始)。该函数区分大小写,而且不接受负参数。
FindString
FindString(String,Target):搜索在另一个字符串 (String) 中出现的特定字符串 (Target),并返回字符串 (String) 在特定字符串 (Target) 中的数字位置。返回字符串 (String) 中首个目标 (Target) 的索引(从 0 开始)。如果不存在匹配项,则返回 -1。
GetLeft
GetLeft(String, Delimiter): 返回所提供的字符串 (String) 的左侧部分,直到首次出现指定的 1 个或多个分隔符 (Delimiter) 为止。
GetPart
GetPart(String, Delimiter, Index):使用指定的 1 个或多个分隔符 (Delimiter) 将字符串 (String) 划分为多个子字符串,并返回索引 (Index) 中指定位置的子字符串。
GetRight
GetRight(String, Delimiter):返回字符串 (String) 在指定的 1 个或多个分隔符 (Delimiters) 首次出现的右侧部分。
GetWord
GetWord(string, n):返回字符串中的第 N 个(从 0 开始)单词。单词指的是由空格分隔的字符集合。索引从 0 开始,表示第一个单词位于位置 0。
Left
Left(String, len):返回字符串 (String) 的前 (len) 个字符。如果 len 小于 0 或大于字符串 (String) 的长度,则字符串保持不变。
Length
Length(String):返回字符串 (String) 的长度。
LowerCase
LowerCase(String):将字符串转换为小写。
PadLeft
PadLeft (String, len, char):将指定字符向字符串的左边填充,直到字符串达到指定的长度。如果用于填充的字符 (char) 超过一个字符,则仅使用第一个字符。
PadRight
PadRight (String, len, char):将指定字符向字符串的右边填充,直到字符串达到指定的长度。如果用于填充的字符 (char) 超过一个字符,则仅使用第一个字符。
REGEX_CountMatches
REGEX_CountMatches(String,pattern,icase):返回字符串 (string) 中匹配模式 (pattern) 的计数。
注意
此函数不适用于 Live Query for Databricks。
REGEX_Match
REGEX_Match(String,pattern,icase):搜索字符串 (string) 中匹配正则表达式 (pattern) 的项。判断字符串是否从第一个字符到最后一个字符与模式匹配。
注意
此函数不适用于 Live Query for Databricks。
REGEX_Replace
REGEX_Replace(String, pattern, replace, icase):返回 RegEx 查找模式产生的字符串,然后替换字符串。
注意
此函数不适用于 Live Query for Databricks。
Replace
Replace(String, Target, Replacement):将字符串 (String) 中每个 (Target) 替换为 (Replacement) 后返回结果字符串。
ReplaceChar
ReplaceChar(String, y, z):将每个出现的字符 (y) 替换为字符 (z) 后返回字符串 (String)。如果替换字符 (z) 具有一个以上的字符,则仅使用第一个字符。如果 (z) 为空,则 (String) 中与 (y) 中任一字符匹配的每个字符都将被直接移除。
ReplaceFirst
ReplaceFirst(String, Target, Replacement):将字符串 (String) 中第一次出现的字符串 (Target) 替换为字符串 (Replacement) 后返回字符串 (String)。
ReverseString
ReverseString(String):反转字符串中的所有字符。
注意
此函数不适用于 Live Query for Databricks。
Right
Right(String, len):返回字符串的最后 (len) 个字符。如果 len 小于 0 或大于 String 的长度,则字符串保持不变。
StartsWith
StartsWith(String, Target, CaseInsensitive=1):检查字符串是否以特定的字符串开头。如果字符串 String 以特定字符串 Target 开头,则返回 True,否则返回 False。
STRCSPN
STRCSPN(String, y):返回字符串 (String) 开头连续的、不含字符串 (y) 中字符的字符串长度。
StripQuotes
StripQuotes(String):移除字符串末尾的一组引号或撇号。
STRSPN
STRSPN(String, y):返回由字符串 (y) 中的字符组成的字符串 (String) 的初始段的长度。
Substring
Substring(String, start, length):返回字符串 (String) 从 (start) 位置开始提取长度等于 (length) 的子字符串(如果提供了长度)。
TitleCase
TitleCase(String):将字符串转换为词首字母大小写。
Trim
Trim(String, y):删除字符串(String)首部和尾部出现的 y 中的任意字符。Y 是可选参数,默认为去除空白字符。提示:在 TRIM 函数示例中,指定的字符将被去掉。字符顺序不重要。
TrimLeft
TrimLeft(String, y):移除字符串 (String) 开头的字符串 (y) 中的字符。Y 是可选参数,默认为去除空白字符。
TrimRight
TrimRight(String, y):移除字符串 (String) 末尾的字符串 (y) 中的字符。Y 是可选参数,默认为去除空白字符。
Uppercase
Uppercase(String):将字符串转换为大写。
测试
测试函数执行数据比较。使用测试函数可识别某个值的数据类型,或判断某个值是否存在。如需了解参数并获取示例,请转至 工作流测试函数。
CompareDigits
CompareDigits(a, b, nNumDigits):比较 2 个数字并确定它们是否与给定的位数 (nNumDigits) 相同。
CompareEpsilon
CompareEpsilon(a, b, epsilon):比较 2 个浮点数,如果它们在 epsilon 范围内,则返回 True。
EqualStrings
EqualStrings(a,b):将字符串 (a) 和字符串 (b) 相比较以确定它们是否完全匹配。如果字符串 a 和 b 中的所有字符都相同,则该函数将返回 True;如果有一个或多个字符不相同,则将返回 False。
IsEmpty
IsEmpty(v):测试 v 是否为 NULL 或等于""。
IsInteger
IsInteger(v):测试 (v) 是否包含可以转换为整数的值。如果是,则返回 True。
IsLowerCase
IsLowerCase(String):如果字符串中的所有(1 个或多个)字母字符均为小写,则返回 True;如果 1 个或多个字母字符为大写,则返回 False。该函数将忽略非字母字符。请注意,此函数仅适用于区分大小写的字符,可能不适用于所有语言中的字符。
IsNull
IsNull(v):测试 (v) 是否为 NULL。如果 v 为 NULL,则返回 True,否则返回 False。
IsNumber
IsNumber(v):测试 (v) 的字段类型是否为数字。
IsString
IsString(v):测试 (v) 的字段类型是否为字符串。
IsUpperCase
IsUpperCase(String):如果字符串中的所有(1 个或多个)字母字符均为大写,则返回 True;如果 1 个或多个字母字符为小写,则返回 False。该函数将忽略非字母字符。请注意,此函数仅适用于区分大小写的字符,可能不适用于所有语言中的字符。