【问题标题】:Fetching of duplicate record提取重复记录
【发布时间】:2016-02-12 12:07:47
【问题描述】:

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

示例(表名 = markslist):

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

如果表结构是这样的,我想在 3 (n) 次中取两次 (n-1) raj

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

【问题讨论】:

  • 您使用的是哪个 dbms?

标签: sql duplicates fetching-strategy


【解决方案1】:

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

最简单的答案是使用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;

【讨论】:

    猜你喜欢
    • 2016-06-12
    • 2018-08-13
    • 1970-01-01
    • 1970-01-01
    • 2016-11-30
    • 1970-01-01
    • 2018-03-04
    • 1970-01-01
    • 2018-06-06
    相关资源
    最近更新 更多