原创 深入了解轻易云数据集成平台的自定义函数

发布时间:
更新时间:
浏览次数:936
评论数:0

函数定义

轻易云数据集成平台使用MySQL函数来控制流程。用户可以用MySQL的方式编写字段属性值进行特殊处理。自定义函数以_function开头声明。

动态值在函数中的使用

在函数中插入动态值变量时,使用{value}的格式。如果处理字符串,需要用'{value}'进行转换。例如:

示例1:计算单价和数量的乘积

_function{price}*{qty}

示例2:结果保留两位小数

_functionROUND({price}*{qty},2)

示例3:替换字符串中的字符

_functionREPLACE('{customer_name}','张三','李四')

常用函数集合

用户可以自行编写自定义函数,轻易云集成平台也提供大量预设函数供快速复用。

函数助手

在字段属性配置页面,有【函数助手】功能,提供大量预设函数支持。

向上取整

传入一个变量%v,返回大于或等于x的最小整数。

_functionCEIL(%v)

向下取整

传入一个变量%v,返回小于或等于x的最大整数。

_functionFLOOR(%v)

四舍五入

传入一个变量%v和保留的小数位数。

_functionROUND(%v,2)

字符串长度

传入一个字符串变量%v,返回字符串长度。

_functionLENGTH('%v')

字符串转小写

将字符串转换为小写。

_functionLOWER('%v')

字符串转大写

将字符串转换为大写。

_functionUPPER('%v')

IF逻辑判断

MySQL IF语句允许根据表达式结果执行一组SQL语句。表达式可以返回TRUE, FALSE或NULL。语法如下:

IF(expr,v1,v2)

示例:当单价大于100时,单价变为0。

_functionIF({price}>=100,0,{price})

CASE搜索

除了IF函数,平台还提供了CASE条件语句,使代码更加可读和高效。CASE语句有简单和可搜索两种形式。

简单CASE语句

简单CASE语句检查表达式的值与一组唯一值的匹配。语法如下:

CASE <表达式>
    WHEN <值1> THEN <操作>
    WHEN <值2> THEN <操作>
    ...
    ELSE <操作>
END CASE;

可搜索CASE语句

可搜索CASE语句适用于更复杂的匹配,如范围。它等同于IF语句,但结构更清晰。语法如下:

CASE
    WHEN <条件1> THEN <命令>
    WHEN <条件2> THEN <命令>
    ...
    ELSE <命令>
END CASE;

MySQL依次计算WHEN子句中的条件,直到找到TRUE的条件并执行对应的THEN子句。如果没有条件为TRUE,则执行ELSE子句。如果省略ELSE子句且没有条件为TRUE,MySQL将报错。