查询出ID不重复的数据数据ID      NAME    JOB    DEPAER
0001    aaa     BB     CC
0001    aaa     SS     XX
0002    FFF     BB     VV
0002    CCC     DD     MM
0003    FF      BB     CC
0003    FFF     MM     SS
0003    FFF     BB     CC要得下以下结果
ID      NAME    JOB    DEPAER
0001    aaa     BB     CC
0002    FFF     BB     VV
0003    FF      BB     CC
SQL语句怎么写

解决方案 »

  1.   

    select id,name,job,depart from(
    select id,name,job,depart,row_number() over(partition by id order by id) rn from tab
    ) where rn = 1
      

  2.   

    select * from 表名 where (aa.id,rowid) in(
           select id,max(rowid) rnum from aa group by id
           );结果和上面的稍有不同,但是去除了重复数据
      

  3.   

    楼上的兄弟,有了rowid就不需要id了,这样对于大数据量来说快些
    select * from 表名 where (aa.id,rowid) in(
      select max(rowid) rnum from aa group by id
      );