请问要实现表A中的数据覆盖表B中的数据的sql语句应该怎么写

解决方案 »

  1.   

    请问要实现表A中的数据覆盖表B中的数据的sql语句应该怎么写delete from B
    insert into B select * from A
      

  2.   

    to:bugchen888这样做的话,原表B中有,而A中没有的数据就丢失了呀
      

  3.   

    update b set b.column1 = a.column1 , ....,b.columnX=a.columnX from a where a.id = b.id
      

  4.   

    谢谢楼上的回复但这条语句好象只是把a,b表中都存在的数据更新了,而在表a中同时不在表b中的数据又没有导到表b中去
      

  5.   

    INSERT INTO b
    SELECT * FROM a WHERE a.id NOT IN (SELECT id FROM b)
      

  6.   

    或者
    DELETE FROM b WHERE id IN (SELECT id FROM a)INSERT INTO b
    SELECT * FROM a