如下
表A
  id  name lever
   1   'A'   1
   2   'B'   3
   3   'A'   1
   4   'Y'   2
表B
   id  name lever
   1   'A'   c   
   2   'A'   3
   3   'A'   C
   5   'Y'   2规则是若 表B中id+name与 表A中一样,则更新表A中 lever
      若 表B id+name不一样 则,把B表中这条数据插入到 A表中。

解决方案 »

  1.   

    MERGE INTO a
    USING b
    ON (a.id = b.id and a.name=b.name)
    WHEN MATCHED THEN
      UPDATE SET a.lever = b.lever
    WHEN NOT MATCHED THEN
      INSERT VALUES (b.id, b.name, b.lever);
      

  2.   

    不是很理解意思update 表A a set lever = (select b.lever from 表B b where a.id=b.id and a.name=b.name)insert into 表A(id,name,lever)
    select id name lever
    from 表B A
    where not exists(select 1 from 表A b where a.id = b.id and a.name = b.name)