多表导入自身数据有关问题

多表导入自身数据问题有4个表TA、TB、TC、TD结构分别如下:SQL code表TATAIDTANAMESNO-----------------------

多表导入自身数据问题
有4个表TA、TB、TC、TD
结构分别如下:

SQL code
表TATAID          TANAME         SNO--------------------------------1             省级1          0022             省级2          002......表TBTBID   TAID       TBNAME    SNO-------------------------------1        1        市级1     0022        1        市级2     0023        2        市级3     002......表TCTCID   TAID   TBID    TBNAME   SNO-----------------------------------1        1     1       县级1   0022        1     2       县级2   0023        2     2       县级3   002......表TDTDID   TAID   TBID  TCID  TBNAME   SNO---------------------------------------1        1     1     2    村级1    0022        1     2     2    村级2    0023        2     2     3    村级3    002......


聪明的您一定看出来了,这是逐级下分的表,每个表第一个字段是主键,添加数据时此值来自各自的序列值,现在问题是:
需要复制这四个表现有的数据在本表中,改动每个表的SNO字段值,如:002改为003,并将每个表的相应字段值改为对应新增记录的主键值,如表TA与TB新增记录后为:
SQL code
表TATAID          TANAME         SNO--------------------------------1             省级1          0022             省级2          0023             省级1          0034             省级2          003......表TBTBID   TAID       TBNAME    SNO-------------------------------1        1        市级1     0022        1        市级2     0023        2        市级3     0025        3        市级1     0036        3        市级2     0037        4        市级3     003......

其它表以此类推,数据量大,请高手指导,非常感谢






[解决办法]
insert /* +parallel */ into select 

insert 里做动作,例如加并行,或者其它HINT提示
[解决办法]
可以考虑先进行更新步骤“并将每个表的相应字段值改为对应新增记录的主键值”;
再进行插入操作。
[解决办法]
insert into ...... returning into 变量

insert into 下级表 value( ...., 变量)

你的省的SNO是如何变化的?