--2(速度第二)
delete m from tb_toupiao1 m where id not in
(select min(id) from tb_toupiao1 group by convert(varchar(16),addtime,120),usid,ptid)--3(速度第三)
delete from tb_toupiao2 where id not in
(select min(id) from tb_toupiao2 group by convert(varchar(16),addtime,120),usid,ptid)--1(速度第一)
delete m from tb_toupiao3 m where id not in 
(select min(id) from tb_toupiao3 n where m.addtime = n.addtime and m.usid = n.usid and m.ptid=n.ptid )如上sql,都是删除重复记录的sql,但是执行起来速度却相差很大,哪位仁兄来解释下啦。谢过 ~

解决方案 »

  1.   

    sql 执行计划怎么看呢,本人sql很菜,望指教 ~
      

  2.   

    2/3應該沒區別,樓主可以多測幾下,會發現速度有小變化1在條件里m.addtime = n.addtime and m.usid = n.usid and m.ptid=n.ptid
    性能是一定會快很多區別方法,把三個查詢改為Select查看執行計劃就可看到
      

  3.   

    1:
    delete m from tb_toupiao1 m where id not in
    (select min(id) from tb_toupiao1 group by convert(varchar(16),addtime,120),usid,ptid)2:
    delete from tb_toupiao2 where id not in
    (select min(id) from tb_toupiao2 group by convert(varchar(16),addtime,120),usid,ptid)上面的第一条sql是加了个临时表吧,加这个有什么作用呢?
      

  4.   

    http://blog.csdn.net/y_h_t/archive/2010/12/05/6055677.aspx