用 delete 删除数据太慢   TRUNCATE 这个比较快,,
我不想把整个表的数据都删除,,我是有条件的 比如 id in (1,2,3) 的删除
有没有快速删除的方法

解决方案 »

  1.   


    //先将1,2,3的数据插入到临时表中
    select * into # from 表 where id in(1,2,3)
    //清空所有数据
    truncate table 表
    //再将临时表数据插入表中
    insert into 表 select * from #
      

  2.   

    饿,,刚才试了下 效率确实是快
    但是有个问题,,in 里的数据量肯定是要分批放进去的,,我用程序筛选出来的ID
    不用多 几万就爆了,,,而且我是要将  包含在  in  里的给删除 留下其他的,,
    我想了下  这样好像不太行,,,如果我用 not in  每次都把其余的加进去
    分批处理的话   那临时表的数据就是重复的,,,