表tbl有字段A,BA   B
----------
a1  b1
a1  b2

a2  b3
a3  b4
a4  b5
a4  b6

a5  b10从上面数据可以看到A对应B时,B中会有不同的对应值,我想如果有不同对应值任意取一行就可以了,需要得到类似这样的结果:
A   B
----------
a1  b1
a2  b3
a3  b4
a4  b5
a5  b10请问这怎么做啊?

解决方案 »

  1.   

    测试是可以的select a,min(b) from t2 t group by a
      

  2.   


    with t as
    (select 'a1' as A,'b1' as B from dual UNION ALL
     select 'a1', 'b2' from dual UNION ALL
     select 'a2', 'b3' from dual UNION ALL
     select 'a3', 'b4' from dual UNION ALL
     select 'a4', 'b5' from dual UNION ALL
     select 'a4', 'b6' from dual UNION ALL
     select 'a5', 'b10' from dual
    )
    select * from (select t.*,row_number()over(partition by A order by A )rn from t)where rn=1