kettle简单使用实例

kettle使用实例包含字符串的拆分、时间转换、判断、记录合并、增加序列

1、表输入:如果没有特殊的条件可以直接选择表可包含所有的字段,也可以不包含所有字段,选择需要的字段,当程序中传入参数时,选择替换sql语句中的变量,选择变量的步骤,当存在较为复杂的情况时,可以在表输入里面使用sql来实现分条件查询,

用到的sql中的函数:

  oracle:字符串的截取:substr(source,startIndex,length);

       查找字符串中包含相应的字符串:instr(source,taget,[startIndex],[nth_appearance]);其中的startIndex,nth_appearance这两个参数不是必须条件,默认返回从index=1开始taget第一次出现的位置,返回的结果值是表示taget字符串的首字母在source的位置,source的index的起始值为1,startIndex表示在source的开始搜索的开始位置,nth_appearance表示查找taget在source中第几次出现。

   逻辑处理函数:decoode(value, if1, then1, if2,then2, if3,then3, . . . else);与case...when ..类似,value表示要判断的值,if表示条件then表示结果,例如:decode(instr(FACTOR,'NO'),'0','0','1')NO_COUNT表示在FACTOR中查找NO返回是0就给字段NO_COUNT设置为0否则设置为1.

sqkserver:创建时间:convert(varchar(23),GETDATE(),121);getdate表示获取当前时间,121表示时间的格式,getdate地方填写字段名

  插叙前那条记录 top n(最好是主键)。还很多函数此处为用到,如果需要请百度

2、字段选择:获取当前流程中的上一个步骤传入的所有字段;

   在字段选择中选择自己需要的字段,在元数据中可以修改字段的类型和字段的格式,字段的长度精度等,在元数据中修改了名称的字段一般在选择和修改中也应该添加需改的字段名。

3、分组:对获取的数据分组

  在使用分组前一般要对数据进行排序,未排序的数据在分组后可能数据不正确,构成分组字段中选择用来分组的字段,其中包含分组字段以及在后面步骤中需要的原始字段,在集合部分请尽量选择集合方式,否则可能出现空指针异常。

4、列转行:

 

  关键字段表示用来转换的对比字段,  选择分组的字段,使转换后相同分组条件的数据聚合,目标字段转换后的字段名,数据字段要转换的字段,关键字值,对比字段的值,类型为转换后字段的类型,聚合方式一般是选择sum,根据需要选择相应的聚合方式

 

-----时隔已久-----

 

 

 

 

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当涉及到数据迁移时,Kettle(Pentaho Data Integration)是一个功能强大的工具。下面是一个简单Kettle数据迁移实例: 假设我们需要将一个MySQL数据库中的数据迁移到另一个MySQL数据库中,具体步骤如下: 1. 准备工作:确保你已经安装并配置好Kettle,并且能够连接到源数据库和目标数据库。 2. 创建一个新的转换(Transformation):在Kettle的界面中,创建一个新的转换。 3. 添加源数据库连接:在转换中,添加一个“Table Input”组件,用于连接到源数据库。配置该组件以指定源数据库的连接信息,包括主机名、端口、数据库名称、用户名和密码等。 4. 指定源数据表:在“Table Input”组件中,指定要迁移的源数据表的名称。 5. 添加目标数据库连接:在转换中,添加一个“Table Output”组件,用于连接到目标数据库。配置该组件以指定目标数据库的连接信息,包括主机名、端口、数据库名称、用户名和密码等。 6. 指定目标数据表:在“Table Output”组件中,指定要迁移的目标数据表的名称。 7. 运行迁移:保存并运行该转换。Kettle将会从源数据库中读取数据并将其插入到目标数据库的相应表中。 这是一个简单Kettle数据迁移实例,可以根据实际需求进行调整和优化。你还可以使用其他Kettle组件和功能来处理数据转换和清洗的需求,例如使用“Select Values”组件进行字段映射和过滤等操作。 请注意,在实际的数据迁移过程中,你可能还需要考虑如何处理数据的一致性、数据类型转换、错误处理等方面的问题。因此,在进行复杂的数据迁移任务时,建议仔细规划和测试,确保数据的准确性和完整性。 这只是一个简单的示例,希望对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值