处理表重复记录(查询和删除)_整理贴4
http://topic.csdn.net/u/20080626/00/43d0d10c-28f1-418d-a05b-663880da278a.html

解决方案 »

  1.   

    --自己去掉重复的字段如id,只需要一个,或变为a_id , b_id
    select m.* from
    (
      select a.* , b.* A inner join B on A.id=B.Aid 
    ) m where d = (select max(d) from
    (
      select a.* , b.* A inner join B on A.id=B.Aid 
    ) n where n.id = m.id and n.d > m.d
    )
      

  2.   

    selet
    *
    from 

    join
    (select * from B t1 where not exists(select 1 from B where ID=a.Aid and t>t1.t))b on a.id=b.Aid
      

  3.   

    SELECT * FROM TA A
    INNER JOIN
    (SELECT * FROM TB B WHERE NOT EXISTS(SELECT 1 FROM TB WHERE Aid=B.Aid AND T>B.T ) ) C
     ON A.ID=C.AID