不一致数据转换主要是将不同业务系统中的相同类型的数据进行统一,例如同一个供应商在结算系统的编码是XX0001,而在CRM(客户关系管理系统)中编码是YY0001,这样就需要将这两个业务系统中的数据抽取过来进行统一转换,转换成同一个编码。
1.打开kettle,创建转换
2.配置表输入控件
为了检查sql语句是否正确我们点击预览,来查看结果是否正确。
SQL语句为
SELECT brand,model FROM company c2 WHERE c2.id
NOT IN
(SELECT c1.id FROM suppliers s1
JOIN company c1 ON s1.brand = c1.brand
AND s1.model = c1.model
AND s1.unitPrice=c1.unitPrice);
3.配置表输入2控件
注意:“从步骤插入数据”和“执行每一行?”的选项要选择正确
4.配置字段选择控件
5.配置表输入3控件
sql语句为
SELECT id,brand,model,unitPrice FROM company c2
WHERE c2.id NOT IN
(SELECT c1.id FROM suppliers s1
JOIN company c1 ON s1.brand = c1.brand
AND s1.model = c1.model
AND s1.unitPrice=c1.unitPrice);
6.配置数据集控件
7.配置字段选择2控件
8.配置插入更新控件
9.运行转换
10.通过navicat查看表company是否成功修改
搞到了navicat的破解版,其实心里有点不舒服。
但是转念一想,慈禧已经替我教过版权费了,豁然开朗。
做的还算成功!