轻易云数据集成平台的函数采用 MySQL 函数,是一种控制流程函数。用户可以完全以使用MySQL的函数方式 来编写每个字段的属性值进行特殊处理。
使用自定义函数必须通过_function来作为声明函数的开始。
函数中使用动态值
但是在使用过程中 需要使用到的动态值变量需要使用 {{value}} 的方式进行插入。
如果是对字符串进行处理则需要增加 ‘{{value}}’ 进行转换。
示例1:需要使用 单价*数量 得到金额时,参考如下:
_function {{price}} * {{qty}}
示例2:单价 * 数量 计算的结果需要保留 2 位小数, 四舍五入时参考如下:
_function ROUND( {{price}} * {{qty}} , 2)
示例3:在使用一些字符串动态值进行操作时需要注意
_function REPLACE( '{{customer_name}}' ,'张三','李四')
// 将客户名称中的字符张三替换为李四。 使用字符串时需要增加 ''
常用的函数集合
在字段值用户可以自行编写 自定义函数。同时轻易云集成平台也提供了 大量预设的函数可以快速复用。
在字段属性配置页面有【函数助手】功能,会提供大量的预设函数进行支持。
向上取整
需要传入一个可以被计算的变量 %v。返回大于或等于 x 的最小整数 。
_function CEIL( %v )
向下取整
需要传入一个可以被计算的变量 %v。返回小于或等于 x 的最大整数。
_function FLOOR( %v )
四舍五入
需要传入一个可以被计算的变量 %v ,同时第二个参数需要输入保留的小数位。
_function ROUND( %v , 2 )
字符串长度
需要传入一个可以字符串变量 %v。 返回字符串长度。
_function LENGTH( '%v' )
字符串转小写
将字符串转换为小写
_function LOWER( '%v' )
字符串转大写
将字符串转换为大写
_function UPPER( '%v' )
………… 待补充
IF逻辑判断
MySQL IF 语句允许您根据表达式的某个条件或值结果来执行一组 SQL 语句。
要在 MySQL 中形成一个表达式,可以结合文字,变量,运算符,甚至函数来组合。表达式可以返回 TRUE,FALSE 或 NULL,这三个值之一。
语法结构如下:
IF(expr,v1,v2)
其中:表达式 expr 得到不同的结果,当 expr 为真是返回 v1 的值,否则返回 v2.
示例1:当单价大于100时,单价变为0。
_function IF( {{price}} >= 100 , 0 , {{price}} )
CASE搜索
除了 IF 函数,轻易云数据集成平台还提供了一个替代的条件语句 CASE。 MySQL CASE 语句使代码更加可读和高效。
CASE 语句有两种形式:简单的和可搜索 CASE 语句。
简单的 CASE 语句
简单的 CASE 语句就是指使用简单 CASE 语句来检查表达式的值与一组唯一值的匹配。
简单的 CASE 语句的语法:
CASE <表达式>
WHEN <值1> THEN <操作>
WHEN <值2> THEN <操作>
...
ELSE <操作>
END CASE;
其中:表达式> 可以是任何有效的表达式。我们将 表达式 的值与每个 WHEN 子句中的值进行比较,例如 值1,值2 等。如果 表达式> 和 <值n> 的值相等,则执行相应的 WHEN 分支中的命令 操作。如果 WHEN 子句中的 值n> 没有与 表达式> 的值匹配,则 ELSE 子句中的命令将被执行。ELSE 子句是可选的。 如果省略 ELSE 子句,并且找不到匹配项,MySQL 将引发错误。
可搜索的 CASE 语句
简单 CASE 语句仅允许将表达式的值与一组不同的值进行匹配。 为了执行更复杂的匹配,如范围,则可以使用可搜索 CASE 语句。 可搜索 CASE 语句等同于 IF 语句,但是它的构造更加可读。
可搜索CASE语句的语法:
CASE
WHEN <条件1> THEN <命令>
WHEN <条件2> THEN <命令>
...
ELSE commands
END CASE;
MySQL 分别计算 WHEN 子句中的每个条件,直到找到一个值为 TRUE 的条件,然后执行 THEN 子句中的相应 命令。如果没有一个条件为 TRUE,则执行 ELSE 子句中的 <命令>。如果不指定 ELSE 子句,并且没有一个条件为 TRUE,MySQL 将发出错误消息。MySQL 不允许在 THEN 或 ELSE 子句中使用空的命令。 如果您不想处理 ELSE 子句中的逻辑,同时又要防止 MySQL 引发错误,则可以在 ELSE 子句中放置一个空的 BEGIN END 块。