0

我想从表中获取重复记录(n 条记录中的 n-1 条记录)。这样的查询应该如何看待?

示例(表名 = markslist):

Name         Marks
Janny          9
raj           10
raj           10
raj           10
rose           8

如果表结构是这样的,我想在 raj3 (n) 次中取 2 次 (n-1)。

我尝试使用排名,但无法获得我想要的结果。

4

1 回答 1

0

首先,在设计表时,最好有一个唯一标识每一行的主键。如果你有一个,这会更简单。

最简单的答案是使用row_number()ANSI 标准函数,在大多数数据库中都可用:

select t.*
from (select t.*, row_number() over (partition by name order by name) as seqnum
      from markslist t
     ) t
where seqnum > 1;
于 2015-11-11T11:51:29.450 回答