是这样的,我想使用dba权限的用户对不同表空间下的两张表,表A。表B(表结构完全一样),想把B里的数据不定期往A里合并,A表的数据仍然保留,B表的数据会不断增多,脚本示例如下:insert into user1.A
select * from user2.B
但是这有一个缺点,就是主键重复的时候,脚本停止执行,其余数据无法插入。请教怎么过滤主键插入不重复的记录。 

解决方案 »

  1.   

    如果两个表的数据是一样的。那每次插入的时候查询出A表。ID的最大值。取出B表中ID大于A表ID最大值的记录插入
      

  2.   

    不行的 我的ID 是自定义的RAW类型 不是常规的ID,不可比较大小。但是你的思路挺有启发的。还是谢谢了。
      

  3.   

    insert into user1.A as select * from user2.B where user2.B.userId  not in (select userId from user1.A) ;这样行不行?
      

  4.   

    问题已经解决了 思路是差不多 使用了minus取减集。