昨天让kettle传入的参数搞的很郁闷,从网上查一些信息,大多讲的是每个transformation内部传递参数,要么就是讲在job中把参数传进transformation,而且还不正确。
大家最常碰到的问题恐怕就是要做增量抽取了吧,增量抽取不可避免要碰到时间戳,那么我们假如每天晚上需要抽取当天新增的数据到目标库,这就需要一个变量来操作。
要是每个transformation都用一个单独控件来记录这个变量,貌似没什么意义,所以总想有没有能统一管理一个参数,然后让所有的transformation和job都可以读到呢?
有。
首先,打开.kettle\kettle.properties,直接在里面定义,比如:
V_YES_DATE=to_char(sysdate,'yyyymmdd')
这里支持数据库函数,说的更直白点,就是这里定义是个啥,那么在transformation里边取到的它就是啥。
定义之后,保存,重启spoon。
在需要的地方,直接%%V_YES_DATE%%,或者${V_YES_DATE}就可以得到。
举例:
SELECT
NAME
, SEX
FROM TESTTABLE
where
to_char(cdate,'yyyymmdd')=${V_YES_DATE}
或者
SELECT
NAME
, SEX
FROM TESTTABLE
where
to_char(cdate,'yyyymmdd')=%%V_YES_DATE%%
也有人说${}这种方式是在linux下的,%%%%是在windows下的,反正我在windows下这两种写法均可。
kettle资料只能说是太少了,就这么点事折腾我一天了。。。
哦对了,别忘了把那个替换SQL语句里的变量这个勾上。。。
分享到:
相关推荐
ETL工具KETTLE实例手册.手把手教你使用kettle
ETL工具Kettle用户手册ETL工具Kettle用户手册ETL工具Kettle用户手册ETL工具Kettle用户手册ETL工具Kettle用户手册
ETL工具Kettle用户手册5.0,开源etl工具kettle,Java源码.zip
ETL工具Kettle用户使用手册5.0 pdf教程
内容概要:ETL之kettle包含26张PPT,kettle安装、使用、如何连接等,使用PDI9.2演示、什么是ETL、什么是Kettle、kettle安装、kettle目录结构、转换和作业、kettle操作、数据库连接、注意事项。 适合人群:具备一定...
大数据ETL工具 Kettle 入门实践.docx
ETL工具Kettle用户手册及Kettle5.x使用步骤带案例超详细版[汇编].pdf
ETL工具Kettle简易使用
etl工具kettle操作简单介绍
ETL工具 Kettle用户手册中文版 kettle学习资料 详细讲述如何使用kettle配置脚本,以及各个组件的作用与使用方法
开源ETL工具kettle系列之常见问题开源ETL工具kettle系列之常见问题开源ETL工具kettle系列之常见问题
ETL工具KETTLE详细讲解,深入浅出了解ETLkettle的使用
开源ETL工具Kettle的相关文档,详细描述了Kettle的相关信息
etl工具kettle的 数据库jar包 oracle mysql