2017-04-05 59 views
0

我想从我的表中删除重复accountno的行。SQL Server 2014:根据行中几个字段之一删除重复的记录

SELECT ACCOUNTNO, DateTime, RESULTCODE, REF 
FROM dbo.Most_Recent_Result 

我试过DISTINCT但REF在某些行上是不同的。

如何删除重复accountno的?我只想删除第二个匹配的accountno记录。

+3

请编辑您的问题,并提供样本数据和预期的结果。显然,如果所有三列的值不完全相同 - 那就是重复的定义,那么你的问题就没有意义了。 –

回答

0

如果你想每个帐号一个排,使用row_number()

SELECT ACCOUNTNO, DateTime, RESULTCODE, REF 
FROM (SELECT mrr.*, 
      row_number() over (partition by accountno order by datetime desc) as seqnum 
     FROM dbo.Most_Recent_Result 
    ) mrr 
WHERE seqnum = 1; 
+0

我正在创建一个SQL视图并获取“SQL无法在网格中显示”消息 – SRC