反馈已提交

网络繁忙

新增计算列功能说明

  • 文档创建者:Wendy123456
  • 历史版本:15
  • 最近更新:Wendy123456 于 2024-11-06
  • 1. 概述

    1.1 版本

    FineDataLink 版本功能变动
    4.0.23
    支持对常量、参数和其他字段进行公式计算或逻辑映射,将结果放到新的一列,参与后续运算或进行输出
    4.1.8.3

    在公式编辑可选的参数中,looptimes类型从字符串变成了数值

    cyctime类型从字符串变成了日期

    4.1.11.3
    • 新增和优化公式REGEXP_SUBSTR、CONCATENATE、FORMAT

    • 优化计算逻辑问题,支持的字段类型为 bool、long、double、string、timestamp

    • 优化交互提示,写函数时下方联动出现函数介绍

    1.2 功能简介

    在不影响原有字段的情况下,新增计算列算子可利用原有字段通过引用或计算获得一个新的字段。

    如下图所示:

    8.png

    1.3 注意事项

    用户的数据源是 MySQL,使用新增计算列算子时,遇到以下问题:

    • 对 600.185 和 700.185 分别取前两位小数,四舍五入后的结果不一样,分别为:600.18、700.19。

    • 4131.9*0.45 两数相乘,正常计算结果是 1859.355,新增计算列算子的结果为 1859.3549999999998。

    新增计算列算子中,数值计算是用 double 类型的,在处理一些精度问题上会有一些问题。

    建议用户将字段类型调整为 decimal,使用「Spark SQL」算子进行计算。

    2. 示例

    2.1 场景模拟

    在对表数据进行处理过程中,用户想新增一列数据,记录合同签约时间与注册时间之间的时间差。

    示例数据:合同事实表.xls

    用户有张「合同事实表」,表中已有字段「注册时间」和「签约时间」。如下图所示:

    1683773294898923.png

    2.2 新建定时任务

    新建定时任务,拖入「数据转换」节点。如下图所示:

    3.png

    2.3 数据输入

    进入数据转换节点,拖入DB 表输入算子,取出存放在数据库中的合同事实表数据。如下图所示:

    4.png

    2.4 新增列

    1)拖入「新增计算列」算子,新增一列,字段名为时间差」,值为签约时间与注册时间之间的时间差。如下图所示:

    6.png

    点击「确定」按钮后,最后结果如下图所示:

    注1:该页面支持字段的新增、删除,不支持字段的排序。

    注2:新增后的字段将按列表顺序,追加到原字段末尾;如用户希望调整字段顺序,可在输出算子的「字段映射」处调整。

    7.png

    各设置项说明如下表所示:

    设置项说明
    字段名

    新增字段的名称;默认为空,必填

    • 不允许为空

    • 限制长度<=30字符

    • 只能是字母 (a-z A-Z)、数字 (0-9)、下划线(_)、或中文的组合

    • 不能包含空格

    • 不能与已有字段名和新增的其他字段名重复

    字段值

    展示字段值;默认为空,必填

    点击时直接弹出公式编辑框

    公式编辑框

    11.png

    在公式编辑框左侧,可看到支持的函数

    鼠标悬浮到某个函数时,在公式释义区域展示公式简介、参数说明、示例;鼠标点击左侧公式时,在公式编辑框中自动插入对应公式

    注1:公式编辑框中的字段和参数,需要从左侧点选或通过自动补全补出;若想手动输入,需注意:手写参数使用 ${} 包裹生效,字段使用 #{} 包裹生效,参数和字段不匹配时标红(大小写敏感)。

    注2:若新增列值的计算公式中包含参数,且参数为小数,将直接截取整数部分参与计算。

    字段类型

    1)根据字段计算的结果类型展示字段类型,不允许手动指定字段类型;用户如果想要做类型转换,可利用相关转换公式,或者接入字段设置算子完成

    2)当输出结果类型无法自动识别,如手动输入 NULL 时,允许用户自行指定类型:

    注:4.1.11.3 之前的数值类型默认为 double类型

    4.1.11.3 以及以上版本支持的字段类型为 bool、long、double、string、timestamp。

    2)点击数据预览,如下图所示:

    8.png

    2.5 数据后续处理

    继续对「合同事实表」进行数据处理,或者使用「DB表输出」算子将数据输出到数据库中。

    3. 拓展阅读

    3.1 使用示例

    还可通过以下内容了解「新增计算列」算子的使用:

    说明
    相关文档
    逻辑原理说明,例如功能逻辑说明、所支持运算符的对应计算逻辑等函数计算格式
    支持的表达式具体介绍

    文本函数概述

    日期函数概述

    逻辑函数概述

    数值函数

    其他函数:ISNULL-判断是否为空

    最佳实践

    常见日期公式

    缺失值处理

    新增列_条件赋值

    新增列_分组赋值

    字符串拼接和截取

    字符串清洗

    3.2 问题解答

    新增计算列算子中没有 sum 和窗口函数,建议使用「Spark SQL」算子实现,详情请参见:SparkSQL窗口函数



    附件列表


    主题: 数据开发-定时任务
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览
    中文(简体)

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭



    AI

    联系我们
    在线支持
    获取专业技术支持,快速帮助您解决问题
    工作日9:00-12:00,13:30-17:30在线
    页面反馈
    针对当前网页的建议、问题反馈
    售前咨询
    采购需求/获取报价/预约演示
    或拨打: 400-811-8890 转1
    qr
    热线电话
    咨询/故障救援热线:400-811-8890转2
    总裁办24H投诉:17312781526
    提交页面反馈
    仅适用于当前网页的意见收集,帆软产品问题请在 问答板块提问前往服务平台 获取技术支持