kettle教程(三):条件判断SwitchCase
介绍
Switch / Case,顾名思义,类似 Java 中的 Switch / Case,⽤于进⾏条件判断。是 kettle 中⼀个⾮常常⽤组件。
使⽤起来也⾮常简单,我们直接来看例⼦。
场景介绍
有⼀个 user 表,表中数据如下:
我们需要对 code 字段进⾏判断,如果不为空,则将数据同步到 user_copy 表(表结构相同);如果 code 为空,则记录⼀条错误记录,错误记录表 error_info 结构如下:
转换
整体的流程如下:
表输⼊:
Switch / Case :
可以看到 Switch 字段为 code,类型为 String 。如果值为空,则执⾏SQL,默认是插⼊更新。插⼊更新:
执⾏ SQL 脚本:
java switch case string可以看到下⾯勾选了“执⾏每⼀⾏“,意思就是:前⼀个步骤的每⼀⾏数据都要执⾏⼀次 SQL 。如果不勾选,则意思就是:前⼀个步骤不管有多少条数据,只执⾏⼀次 SQL 。下⾯传⼊了⼀个参数 id,⽤来替换 SQL 中的 ?。
运⾏结果:
user_copy 表:
error_info 表:
可以看到,⼀共 10 条数据,其中 7 条 code 不为空的进⼊了 user_copy 表,3 条 code 为空的进了异常表。总结
Switch / Case 组件⽤于条件判断,可以根据 Case 值⾛不同的分⽀。是 kettle 中⼀个⾮常基础⼜重要的组件。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论