日期:2014-05-16  浏览次数:20494 次

去掉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就可以了

?