去掉Oracle表中特定重复记录的方法。

A:

ID  NAME

1,AAAA

1,BBBB

2,CCC

3,DDD

 

如果想只取得每个ID的第一条记录,即结果要:

1,AAAA

2,CCC

3,DDD

则使用函数

select a.id,a.name,row_number() over(partition by a.id ORDER BY a.id desc) num from a

结果:

1,AAAA,1

1,AAAA,2

2,CCC,1

3,DDD,1

再查询这个结果,加上num=1就可以了

 

你可能感兴趣的:(oracle)