[Kettle] 公式

news/2024/10/31 3:27:29/

公式是用来计算数据流中数据的表达式

公式可以是"A+B"这样的简单计算,也可以是类似"if/then"复杂业务逻辑判断的表达式

数据源

2019年11月月考成绩(Kettle数据集16).xlsicon-default.png?t=N7T8https://download.csdn.net/download/Hudas/88553816?spm=1001.2014.3001.5501需求:在某年级的"2019年11月月考成绩.xls"文件中,为了统计成绩以表彰优秀的学生,需要使用公式组件,统计学生所有考试科目的总分,并对总分650分以上的学生评优标注"优秀"

1.建立【公式】转换工程

使用Ctrl+N快捷键,创建【公式】转换工程,单击【核心对象】选项卡,展开【输入】对象,选中【Excel输入】组件,并拖曳到右边工作区中,设置参数,导入"2019年11月月考成绩.xls"文件,预览数据,如下图所示,在当前源数据中,只有各科课程的成绩,没有统计总分

在【公式】转换工程中,单击【核心对象】选项卡,单击展开【脚本】对象,选中【公式】组件,并拖曳到右边工作区中,由【Excel输入】组件指向【公式】组件,建立节点连接,如下图所示

2.设置【公式】参数

双击【公式】组件,弹出【公式】对话框,如下图所示

【公式】组件的有关参数说明如下表所示

参数名称说明
步骤名称

表示公式组件名称,在单个转换工程中,名称必须唯一

默认值是【公式】组件名称

新字段表示新增加的字段名称,默认值为空
公式

表示计算公式,单击单元格时,系统打开公式编辑器窗口,提供可用函数的帮助,方便用户编辑计算公式,默认值为空

值类型

表示字段的数据类型

类型选项有:BigNumber、Binary、Boolean、Date、Integer、Internet Address、Number、String、Timestamp,默认值为空

长度表示字段长度,默认值为空
精度表示数字类型字段的浮点数的精确位数,默认值为空
替换值表示字段需要替换值,默认值为空

在【公式】对话框中,设置参数,利用公式计算总分,根据总分标注成绩优秀的学生,步骤如下所示

(1) 设置组件名称,保留【步骤名称】默认值"公式"

(2) 设置字段表参数,在【字段】表中,添加【总分】【评优】两个新字段,分别单击两个新字段所在的单元格,进行相关参数的配置

3.预览结果数据

在【公式】转换工程中,单击【公式】组件,再单击工作区上方的"预览这个转换"图标,预览使用公式计算后的数据,如下图所示


http://www.ppmy.cn/news/1228962.html

相关文章

大白话解释什么类加载机制

大家好,我是伍六七。 今天我们来聊聊一个 Java 面试必考基础题目:类加载机制和双亲委派机制。 Java 类的加载机制是 Java 虚拟机(JVM)中类加载(Class Loading)和链接(Linking)的过…

pytest测试框架介绍(1)

又来每天进步一点点啦~~~ 一、Pytest介绍: pytest 是一个非常成熟的全功能的Python测试框架; pytest 简单、灵活、易上手; 支持参数化 能够支持简单的单元测试和复杂的功能测试,可以做接口自动化测试(pytestrequests&…

穷举法、回溯法、分支界限法解决旅行商(TSP)问题

文章目录 一、问题描述二、穷举法解决2.1 介绍2.2 代码 三、回溯法解决四、分支界限法4.1 介绍4.2 代码 一、问题描述 有一个旅行商由某城市出发,经过所有给定的 n n n 个城市后,再回到出发的城市。除了出发的城市外,其它城市只经过一回。这…

在bootstrap中,能不能对同一个容器,既使用类row进行网格设计,又使用类d-flex实现弹性盒子的性能?

问:在bootstrap中,能不能对同一个容器,既使用类row进行网格设计,又使用类d-flex实现弹性盒子的性能? 是的,你可以在Bootstrap中同时使用row类进行网格设计和d-flex类实现弹性盒子。这两个类可以结合使用&a…

asp.net校园二手交易平台系统VS开发sqlserver数据库web结构c#编程计算机网页

一、源码特点 asp.net校园二手交易平台系统 是一套完善的web设计管理系统,系统采用mvc模式(BLLDALENTITY)系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为 vs2010,数据库为sqlserver2008&a…

Verilog基础:仿真时x信号的产生和x信号对于各运算符的特性

相关阅读 Verilog基础https://blog.csdn.net/weixin_45791458/category_12263729.html?spm1001.2014.3001.5482 信号爆x也许是所有IC人的噩梦,满屏的红色波形常让人头疼不已,但x信号的产生原因却常常只有几种,只要遵循一定的代码规范&#…

Docker基础知识总结

文章目录 1.Docker介绍2.Docker版本3.为什么要使用Docker4.Docker基础组件4.1 镜像(Images)4.2 容器(Container)和仓库(Repository) 5.Docker安装6.Docker run7.Dockerfile8.Docker commit9.镜像发布到镜像…

C++不同类型转换

内置类型的转换: 内置类型之间的转换之前提过。相同类型的赋值直接进行,但不同类型之间的赋值系统会将将其转换成临时变量,这个临时变量具有常性,然后再将这个临时变量进行赋值,这里就不做代码演示了。自定义类型转换为…