select a,test1.b,c,e from test1,test2 where test1.b=test2.b group by a,test1.b;

解决方案 »

  1.   

    group by a,test1.b什么意思?执行结果不准确
      

  2.   

    select distinct test1.A,test1.B,test1.C,test2.E from test1,test2 where test1.B=test2.B;
      

  3.   

    select a.A,a.B,a.C,b.E from test1 a,test2 b
    where a.B = b.B(+) and a.B = 11
      

  4.   


    结果都是:
    A B C E
    --------
    1 11 2 8
    3 11 4 8
      

  5.   

    select a.A,a.B,a.C,b.E from test1 a,test2 b
    where a.B = b.B(+)
      

  6.   

    试试看:
    select a.A,a.B,a.C,b.E from test1 a,test2 b
    where a.B = b.B(+)
    and   a.rownum=b.rownum(+)
      

  7.   

    select t1.a,t1.b,t1.c,t2.e
    from (select rownum id1,a,b,c from test1) t1,
         (select rownum id2,b,e from test2) t2
    where t1.id1=t2.id2(+)
    and   t1.b=t2.b(+)
      

  8.   

    select t1.a,t1.b,t1.c,t2.e
    from (select rownum id1,a,b,c from test1) t1,
         (select rownum id2,b,e from test2) t2
    where t1.id1=t2.id2(+)
    and   t1.b=t2.b(+)
      

  9.   

    分析一下:
    B表中B字段为11的其E值为8。
    而A表中B字段为11的有两条记录,
    为什么只有第一条B字段为11的其E值为8呢?
    这个从逻辑上讲是不通的。