表 A 和 表 B  通过ID连接
表A的一条记录对应表B多条记录select A.ID,A.a,A.b,B.c,B.D from A inner join B on A.ID=B.ID 只需要取B表中一条记录

解决方案 »

  1.   

    select A.ID,A.a,A.b,B.c,B.D 
    from A inner join 
    (select id,max(c) as c,max(d) as d from b group by id) B on A.ID=B.ID 
      

  2.   


    select A.id , A.A , T.C , T.D from A,
    (select t.* from B m where C = (select min(C) from B where ID = m.ID)) T
    where A.id = T.id
      

  3.   

    select A.ID,A.a,A.b,max(B.c)as c ,max(B.D) as d
     from A inner join B on A.ID=B.ID
    group by a.id,a.a,a.b
      

  4.   

    select A.ID,A.a,A.b,B.c,B.D 
    from A inner join 
    (    select id,c,d 
         from b tp 
         where not exists(select 1 from b where tp.id = id and c>tp.c) B 
    on A.ID=B.ID 
      

  5.   

    select A.ID,A.a,A.b,B.c,B.D from A inner join B on A.ID=B.ID
    where exists (select 1 from b where a=a.a and id<a.id)