谢谢!!

解决方案 »

  1.   

     原问题-->当批量删除或者更新数量超过10W时候,用id in(...)好还是用事物逐条操作好?
      

  2.   

    删除:DELETE FROM TABLE1 WHERE EXISTS (SELECT 1 FROM TABLE2 WHERE TABLE1.ID=TABLE2.ID and TABLE2.DATE>’2011-01-01’)
    DELETE FROM A FORM TABLE1 A INNER JOIN TABLE2 B ON A.ID=B.ID WHERE B.DATE>’2011-01-01’更新:UPDATE A SET VOL1=C.VOL1,VOL2=C.VOL2,VOL3=C.VOL3 FROM TABLE1 A INNER JOIN TABLE2 C ON A.ID=C.ID WHERE C.NAME=’USA’
    UPDATE A SET VAOL1=(SELECT VOL1 FROM TABLE2 C WHERE A.ID=C.ID AND C.NAME=’UAS’) FROM TABLE1 A另外,还可以使用CTE来帮助更新和删除。
      

  3.   

    既然可以用id in(...)来确定删除的数据记录,当然也可以按照连接查询的方法来确定要删除的是哪些记录!