mysql5
需要1个函数 类似 sqlserver2008的 merge。  a  merge  b 的 时候 他会把b 表里a没有的记录 插入a ,b表里有的 参照主键id更新a表的对应记录 。
mysql的  replace  into
INSERT INTO .. ON DUPLICATE KEY更新多行记录
测试是仅仅支持静态记录
不支持一个参照表的 插入或更新问下有没有类似merge 的对应函数。
或者相应的解决方法

解决方案 »

  1.   

    不支持一个参照表的 插入或更新  比如 replace into a select * from b (a b结构相同 id为主键)测试发现没有用。是没有执行的。ON DUPLICATE KEY也不可以
    仅仅当replace into a values(1,2,22,3,33,3)这样是可以的 DUPLICATE KEY也是。难道只能用游标每行读取?
      

  2.   

    INSERT INTO .. ON DUPLICATE KEY应该可以,前提是有主键
    详细说明
      

  3.   

    replace into a select * from b 这个是可以的 是业务逻辑(内存表原因 )
      

  4.   

    replace into a select * from b where id not in (select id from a)