使用kettle,查询2个数据库中的表作为输入,输出到另外表中

在使用kettle,查询2个数据库中的表作为输入,输出到另外表中

 

当前文章图片都404了,大家可以参考这篇文章,原理是一样的,操作中有什么问题可以向我留言,我回第一时间回复的  kettle中间表值映射

问题描述

在mysql数据库中存在dept(部门表),在oracle数据库中存在emp(员工表),需要执行(SELECT d.*,e.* FROM dept d,emp e WHERE d.id=e.id;) 的操作进行查询。

使用kettle的“查询”>“数据库连接”来完成

mysql 的 dept 与oracle emp的表结构(dept.id与 emp.id进行关联)

mysql

mysql> desc dept;
+----------+--------------+------+-----+---------+----------------+
| Field    | Type         | Null | Key | Default | Extra          |
+----------+--------------+------+-----+---------+----------------+
| ID       | int(11)      | NO   | PRI | NULL    | auto_increment |
| DEPTNAME | varchar(255) | YES  |     | NULL    |                |
+----------+--------------+------+-----+---------+----------------+
oracle emp

SQL> desc emp;
Name  Type          Nullable Default Comments 
----- ------------- -------- ------- -------- 
EID   INTEGER       Y                         
ENAME VARCHAR2(255) Y                         
ID    INTEGER       Y    

1:表输入 dept

2:oracle表输入

1:Parameter参数字段取的是第一个表输入的字段。
2: 如果勾选了“Outer join” 默认是进行了左连接,类似以sql的SELECT d.* ,e.* FROM dept d LEFT JOIN emp e ON d.Id=e.id;
  • 1
  • 2
  • 3

3: 表输出

选中需要的字段进行输出
  • 1
  • 2

4:结果

你可能感兴趣的:(▶,Kettle)