表中有80多万条记录表如下
c1   c2   c3
abc   bbb  2
bbb   ctd   3
bbb   abc   4表中没有重复的记录,同一条记录中,C1<>C2 如何删除表中c1 c2 交叉相等的记录 如第一行和第三行我写的sql语句如下:可是速度超慢  各位高手能不能给更好的,或者给个思路也行
delete c1,c2,c3 from relation1 as a where not exists(select 1 from relation1 where ((c1=a.c2) and (c2 = a.c1)))

解决方案 »

  1.   

    delete relation1 from relation1,relation1 as b where relation1.c1>relation1.c2 and relation1.c1=b.c2 and relation1.c2=b.c1;[align=center]====  ====
    [/align]
      

  2.   

    由于您有部分未结贴,所以特此介绍一下结贴的方法如果您问题已经得解决,请您及时结帖给分,以感谢帮助您的朋友。 结帖方法:点击版面右上方或右下方 [管理] ,进入页面后就可以输入密码,分别给分,结帖。 
     或参考:
    http://www.csdn.net/help/over.asp
    http://topic.csdn.net/u/20080110/19/7cb462f1-cac6-4c28-848e-0a879f4fd642.html
    =============================================================================
    问题解决,请及时结贴。  
     正确结贴方法:    
     管理帖子-->给分-->输入密码-->结贴[align=center]====  ====
    [/align]