水壶/自动参考表

时间:2011-06-16 10:19:55

标签: oracle pentaho kettle

我有一张带有人的excel表,每个人都有一个父亲和一个母亲在同一张单子里。我的exel表看起来像这样:

poeple --- 父亲 --- 母亲

约翰-------- tony ----- jane

tony -------- jack

我想将数据导入Oracle数据库表,如下所示:

id --- poeple --- 父亲 --- 母亲

0 ----- jack

1 ----- tony -------- 0

2 ----- jane

我的工作流程应该是什么?

3 ----约翰-------- 1 ----------- 2

1 个答案:

答案 0 :(得分:0)

至少首先将数据加载到具有代理ID的表中会更容易:

people father mother
------ ------ ------
john   tony   jane
tony   jack

然后,您可以为尚未位于“人员”列中的父亲和母亲添加行:

insert into mytable (people)
( select mother from mytable
  union
  select father from mytable 
)
minus
select people from mytable;

那会给你:

people father mother
------ ------ ------
jack
tony   jack
jane
john   tony   jane

然后,您可以为每一行添加一个代理ID,如果需要,可以使用它代替。