ETL kettle 从上一步传来的参数使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ETL kettle 从上一步传来的参数使用相关的知识,希望对你有一定的参考价值。

KETTLE 第一步是表输入,查询到两列,为2个数,第二步是个 执行sql ,在里面怎么使用第一步传来的2个数字。

你的意思是从一个表里面查到2列数值,然后想把这2列作为下一个SQL的where条件吧?

第一步:变量和目标表的准备

这个对应于你说的2列变量值

这个是我在数据库里面创建的一张student表  对应字段  id   name   score

 

第二步:搭建处理环境

在这儿  where条件里的第一个问号对应的是传过来的第一个参数(ID)  第二个问号对应的是传过来的第二个参数(NAME)   PS:要是你把SQL写成  where name = ? and id = ?就会出错的。

勾选“替换SQL语句里的变量“和”执行每一行“ 。

拓扑图如下:

结果如下:

参考技术A

要使用从上一步传来的参数,只要在使用SQL进行引用就可以。

ps:对应的拓扑结构:

ETL:

是“Extract、 Transform 、Load”的缩写,也就是代表ETL过程的三个最主要步骤:“抽取、转换、装载”,但我们平时往往简称其为数据抽取。

Kettle:

是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,绿色无需安装,数据抽取高效稳定。Kettle 中文名称叫水壶,该项目的主程序员MATT 希望把各种数据放到一个壶里,然后以一种指定的格式流出。

参考技术B 第一步查到的两列定义为变量,往第二步传递,然后在第二步sql里面进行引用即可。

Kettle实现循环

转换1=》核心控件[复制记录到结果]

转换2=》核心设置[设置命名参数]

job1=》

核心设置:

1)高级[勾选“复制上一步结果到命名参数”;勾选“执行每一个输入行”]

2)命名参数:

设置命名参数,同时对应流列名

以上是关于ETL kettle 从上一步传来的参数使用的主要内容,如果未能解决你的问题,请参考以下文章

ETL利器Kettle实战应用解析系列一Kettle使用介绍

(转)ETL利器Kettle实战应用解析系列一Kettle使用介绍

kettle庖丁解牛第26篇之删除

kettle庖丁解牛第25篇之插入更新

开源ETL工具之Kettle介绍

开源ETL工具之Kettle介绍