http://topic.csdn.net/u/20110429/13/e0182cb1-fb60-4083-81c2-80f734c1eb4d.html我在上面的帖子中要完成删除重复的记录,但是,wwwwa的回答,我怎么看不懂啊,不好意思,sql语句不太熟啊。DELETE A FROM TT A INNER JOIN
(SELECT A1,B1,MIN(VALUE) AS MI FROM TT GROUP BY A1,B1) B
ON A.A1=B.A1 AND A.B1=B.B1 AND A.VALUE=B.MI
我知道delete from 是从表里面删除记录,
为什么delete a from 啊?tt又是什么啊,

解决方案 »

  1.   

    DELETE A 
    FROM tbname1 A INNER JOIN tbname2 B
    ON A.A1=B.A1 AND A.B1=B.B1 AND A.VALUE=B.MI
      

  2.   

    1 因为你SQL语句不熟。 
    2,因为你懒得去自己查一下MYSQL的手册。
      

  3.   

    谢谢楼上的回答。我还是把那个帖子修改一下,
    在这里讨论一下吧,
    创建了一个表,其中记录的重复类似如下:
    a1,   b1,   c1,  d1,  4
    a1,   b1,   c12, d12, 5
    a2,   b2,   c2,  d2,  7
    a3,   b3,   c3,  d3,  15
    a3,   b3,   c31  d31, 17...表的记录是这样的
    1、前两列重复的,重复时,重复的记录只重复一次,比如,第1,2条记录,第3,4条记录;
    2、也有不重复的记录,比如第3条记录;
    3、现在我想删除重复的记录的一个,保留第5列最大的那个;上面的表删除后的效果是这样的
    a1,   b1,   c12, d12, 5
    a2,   b2,   c2,  d2,  7
    a3,   b3,   c31  d31, 17请问如何快速删除?
      

  4.   

    楼上的回答里面没有delete A from table语法啊
      

  5.   

    本帖最后由 ACMAIN_CHM 于 2011-05-08 16:51:22 编辑
      

  6.   

    另外你的这个需要需要用 LEFT JOIN, 而不是 INNER JOIN。
    这个在你的那个帖子中已经回复你了,看来楼主同样是没兴趣看别人的回复。