Oracle 从表中删除重复记录,但保留一些重复记录,以便显示一段时间内值的变化

Oracle 从表中删除重复记录,但保留一些重复记录,以便显示一段时间内值的变化,oracle,duplicates,Oracle,Duplicates,我试图从表中删除重复记录,但我想保留一些重复记录,以便显示一段时间内值的变化。期望的输出将解释我的意思。如果我使用下面的查询,这是我根据本网站上发布的一些查询的各种答案创建的,我不会得到我想要的。我已经在原始表中发布了数据,我希望我的结果集看起来像什么,以及如果我使用我的查询,我实际得到了什么 delete FROM (select t.*, rowid, row_number() over (partition by S_ID,Fld_ID,val order by dt) dup

我试图从表中删除重复记录,但我想保留一些重复记录,以便显示一段时间内值的变化。期望的输出将解释我的意思。如果我使用下面的查询,这是我根据本网站上发布的一些查询的各种答案创建的,我不会得到我想要的。我已经在原始表中发布了数据,我希望我的结果集看起来像什么,以及如果我使用我的查询,我实际得到了什么

delete FROM 
 (select t.*, rowid, 
 row_number() over  (partition by S_ID,Fld_ID,val order by dt) dup
 from my_t t)
where dup >1 
order by dt;
dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
31-Dec-15   1206    1676266 1.4  
31-Jan-16   1206    1676266 1.4  
29-Feb-16   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
31-Mar-16   1206    1676266 1.2  
02-Apr-16   1206    1676266 1.2  
03-Apr-16   1206    1676266 1.2  
11-Apr-16   1206    1676266 1.2  
14-Apr-16   1206    1676266 1.4  
16-Apr-16   1206    1676266 1.4  
18-Dec-14   2804    1676266 5955  
30-Dec-15   2804    1676266 5955  
31-Jan-16   2804    1676266 5955  
29-Feb-16   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
18-Mar-16   2804    1676266 5955  
19-Mar-16   2804    1676266 5955  
20-Mar-16   2804    1676266 8587  
21-Mar-16   2804    1676266 8587  
23-Mar-16   2804    1676266 8587  
24-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
30-Dec-15   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
29-Feb-16   2804    1676775 86645  
17-Mar-16   2804    1676775 86645 
dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
18-Dec-14   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
20-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
原始表格

dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
31-Dec-15   1206    1676266 1.4  
31-Jan-16   1206    1676266 1.4  
29-Feb-16   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
31-Mar-16   1206    1676266 1.2  
02-Apr-16   1206    1676266 1.2  
03-Apr-16   1206    1676266 1.2  
11-Apr-16   1206    1676266 1.2  
14-Apr-16   1206    1676266 1.4  
16-Apr-16   1206    1676266 1.4  
18-Dec-14   2804    1676266 5955  
30-Dec-15   2804    1676266 5955  
31-Jan-16   2804    1676266 5955  
29-Feb-16   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
18-Mar-16   2804    1676266 5955  
19-Mar-16   2804    1676266 5955  
20-Mar-16   2804    1676266 8587  
21-Mar-16   2804    1676266 8587  
23-Mar-16   2804    1676266 8587  
24-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
30-Dec-15   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
29-Feb-16   2804    1676775 86645  
17-Mar-16   2804    1676775 86645 
dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
18-Dec-14   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
20-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
预期结果

dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
31-Dec-15   1206    1676266 1.4  
31-Jan-16   1206    1676266 1.4  
29-Feb-16   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
31-Mar-16   1206    1676266 1.2  
02-Apr-16   1206    1676266 1.2  
03-Apr-16   1206    1676266 1.2  
11-Apr-16   1206    1676266 1.2  
14-Apr-16   1206    1676266 1.4  
16-Apr-16   1206    1676266 1.4  
18-Dec-14   2804    1676266 5955  
30-Dec-15   2804    1676266 5955  
31-Jan-16   2804    1676266 5955  
29-Feb-16   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
18-Mar-16   2804    1676266 5955  
19-Mar-16   2804    1676266 5955  
20-Mar-16   2804    1676266 8587  
21-Mar-16   2804    1676266 8587  
23-Mar-16   2804    1676266 8587  
24-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
30-Dec-15   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
29-Feb-16   2804    1676775 86645  
17-Mar-16   2804    1676775 86645 
dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
14-Apr-16   1206    1676266 1.4  
18-Dec-14   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
18-Mar-16   2804    1676266 5955  
20-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
29-Feb-16   2804    1676775 86645 
dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
18-Dec-14   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
20-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
实际结果

dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
31-Dec-15   1206    1676266 1.4  
31-Jan-16   1206    1676266 1.4  
29-Feb-16   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
31-Mar-16   1206    1676266 1.2  
02-Apr-16   1206    1676266 1.2  
03-Apr-16   1206    1676266 1.2  
11-Apr-16   1206    1676266 1.2  
14-Apr-16   1206    1676266 1.4  
16-Apr-16   1206    1676266 1.4  
18-Dec-14   2804    1676266 5955  
30-Dec-15   2804    1676266 5955  
31-Jan-16   2804    1676266 5955  
29-Feb-16   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
18-Mar-16   2804    1676266 5955  
19-Mar-16   2804    1676266 5955  
20-Mar-16   2804    1676266 8587  
21-Mar-16   2804    1676266 8587  
23-Mar-16   2804    1676266 8587  
24-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
30-Dec-15   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
29-Feb-16   2804    1676775 86645  
17-Mar-16   2804    1676775 86645 
dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
18-Dec-14   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
20-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  

如果您希望根据日期保留一份副本,下面的示例是一种方法。可以对其进行调整,以保留N个副本,或以不同的方式排序,或根据需要随机排序。在第一个示例之后,有几个修改来显示这一点

dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
31-Dec-15   1206    1676266 1.4  
31-Jan-16   1206    1676266 1.4  
29-Feb-16   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
31-Mar-16   1206    1676266 1.2  
02-Apr-16   1206    1676266 1.2  
03-Apr-16   1206    1676266 1.2  
11-Apr-16   1206    1676266 1.2  
14-Apr-16   1206    1676266 1.4  
16-Apr-16   1206    1676266 1.4  
18-Dec-14   2804    1676266 5955  
30-Dec-15   2804    1676266 5955  
31-Jan-16   2804    1676266 5955  
29-Feb-16   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
18-Mar-16   2804    1676266 5955  
19-Mar-16   2804    1676266 5955  
20-Mar-16   2804    1676266 8587  
21-Mar-16   2804    1676266 8587  
23-Mar-16   2804    1676266 8587  
24-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
30-Dec-15   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
29-Feb-16   2804    1676775 86645  
17-Mar-16   2804    1676775 86645 
dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
18-Dec-14   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
20-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
在您的示例中创建MY_T后,您可以删除所有重复项,但原始项之后第二个最旧项除外,如下所示:

dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
31-Dec-15   1206    1676266 1.4  
31-Jan-16   1206    1676266 1.4  
29-Feb-16   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
31-Mar-16   1206    1676266 1.2  
02-Apr-16   1206    1676266 1.2  
03-Apr-16   1206    1676266 1.2  
11-Apr-16   1206    1676266 1.2  
14-Apr-16   1206    1676266 1.4  
16-Apr-16   1206    1676266 1.4  
18-Dec-14   2804    1676266 5955  
30-Dec-15   2804    1676266 5955  
31-Jan-16   2804    1676266 5955  
29-Feb-16   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
18-Mar-16   2804    1676266 5955  
19-Mar-16   2804    1676266 5955  
20-Mar-16   2804    1676266 8587  
21-Mar-16   2804    1676266 8587  
23-Mar-16   2804    1676266 8587  
24-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
30-Dec-15   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
29-Feb-16   2804    1676775 86645  
17-Mar-16   2804    1676775 86645 
dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
18-Dec-14   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
20-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
DELETE FROM MY_T
WHERE ROWID IN
      (SELECT THE_ROWID
       FROM
         (SELECT
            ROWID           THE_ROWID,
            ROW_NUMBER()
            OVER (
              PARTITION BY S_ID, FLD_ID, VAL
              ORDER BY DT ) DUP
          FROM MY_T T)
       WHERE DECODE(DUP, 2, 1, DUP) > 1);


15 rows deleted.
然后,查询以检查结果:

dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
31-Dec-15   1206    1676266 1.4  
31-Jan-16   1206    1676266 1.4  
29-Feb-16   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
31-Mar-16   1206    1676266 1.2  
02-Apr-16   1206    1676266 1.2  
03-Apr-16   1206    1676266 1.2  
11-Apr-16   1206    1676266 1.2  
14-Apr-16   1206    1676266 1.4  
16-Apr-16   1206    1676266 1.4  
18-Dec-14   2804    1676266 5955  
30-Dec-15   2804    1676266 5955  
31-Jan-16   2804    1676266 5955  
29-Feb-16   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
18-Mar-16   2804    1676266 5955  
19-Mar-16   2804    1676266 5955  
20-Mar-16   2804    1676266 8587  
21-Mar-16   2804    1676266 8587  
23-Mar-16   2804    1676266 8587  
24-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
30-Dec-15   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
29-Feb-16   2804    1676775 86645  
17-Mar-16   2804    1676775 86645 
dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
18-Dec-14   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
20-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
SELECT
  DT, FLD_ID, S_ID, VAL
FROM MY_T
ORDER BY 2 ASC, 2 ASC, 4 ASC, 1 ASC;
结果:

dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
31-Dec-15   1206    1676266 1.4  
31-Jan-16   1206    1676266 1.4  
29-Feb-16   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
31-Mar-16   1206    1676266 1.2  
02-Apr-16   1206    1676266 1.2  
03-Apr-16   1206    1676266 1.2  
11-Apr-16   1206    1676266 1.2  
14-Apr-16   1206    1676266 1.4  
16-Apr-16   1206    1676266 1.4  
18-Dec-14   2804    1676266 5955  
30-Dec-15   2804    1676266 5955  
31-Jan-16   2804    1676266 5955  
29-Feb-16   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
18-Mar-16   2804    1676266 5955  
19-Mar-16   2804    1676266 5955  
20-Mar-16   2804    1676266 8587  
21-Mar-16   2804    1676266 8587  
23-Mar-16   2804    1676266 8587  
24-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
30-Dec-15   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
29-Feb-16   2804    1676775 86645  
17-Mar-16   2804    1676775 86645 
dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
18-Dec-14   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
20-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
DT         FLD_ID  S_ID     VAL    
17-MAR-16  1206    1676266  1.2    
31-MAR-16  1206    1676266  1.2    
18-DEC-15  1206    1676266  1.4    
31-DEC-15  1206    1676266  1.4    
18-DEC-14  2804    1676266  5955   
30-DEC-15  2804    1676266  5955   
17-MAR-16  2804    1676266  6895   
20-MAR-16  2804    1676266  8587   
21-MAR-16  2804    1676266  8587   
31-JAN-16  2804    1676775  86640  
18-DEC-14  2804    1676775  86645  
30-DEC-15  2804    1676775  86645  
如果要保留2个副本,请将DECODEDUP,2,1,DUP>1更改为DUP<4时的情况,然后将1 ELSE DUP END>1。现在,删除操作只命中10行:

dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
31-Dec-15   1206    1676266 1.4  
31-Jan-16   1206    1676266 1.4  
29-Feb-16   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
31-Mar-16   1206    1676266 1.2  
02-Apr-16   1206    1676266 1.2  
03-Apr-16   1206    1676266 1.2  
11-Apr-16   1206    1676266 1.2  
14-Apr-16   1206    1676266 1.4  
16-Apr-16   1206    1676266 1.4  
18-Dec-14   2804    1676266 5955  
30-Dec-15   2804    1676266 5955  
31-Jan-16   2804    1676266 5955  
29-Feb-16   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
18-Mar-16   2804    1676266 5955  
19-Mar-16   2804    1676266 5955  
20-Mar-16   2804    1676266 8587  
21-Mar-16   2804    1676266 8587  
23-Mar-16   2804    1676266 8587  
24-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
30-Dec-15   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
29-Feb-16   2804    1676775 86645  
17-Mar-16   2804    1676775 86645 
dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
18-Dec-14   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
20-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
DELETE FROM MY_T
WHERE ROWID IN
      (SELECT THE_ROWID
       FROM
         (SELECT
            ROWID           THE_ROWID,
            ROW_NUMBER()
            OVER (
              PARTITION BY S_ID, FLD_ID, VAL
              ORDER BY DT ) DUP
          FROM MY_T T)
       WHERE CASE WHEN DUP < 4 THEN 1 ELSE DUP END > 1);


10 rows deleted.

SELECT
  DT, FLD_ID, S_ID, VAL
FROM MY_T
ORDER BY 2 ASC, 2 ASC, 4 ASC, 1 ASC;

DT         FLD_ID  S_ID     VAL    
17-MAR-16  1206    1676266  1.2    
31-MAR-16  1206    1676266  1.2    
02-APR-16  1206    1676266  1.2    
18-DEC-15  1206    1676266  1.4    
31-DEC-15  1206    1676266  1.4    
31-JAN-16  1206    1676266  1.4    
18-DEC-14  2804    1676266  5955   
30-DEC-15  2804    1676266  5955   
31-JAN-16  2804    1676266  5955   
17-MAR-16  2804    1676266  6895   
20-MAR-16  2804    1676266  8587   
21-MAR-16  2804    1676266  8587   
23-MAR-16  2804    1676266  8587   
31-JAN-16  2804    1676775  86640  
18-DEC-14  2804    1676775  86645  
30-DEC-15  2804    1676775  86645  
29-FEB-16  2804    1676775  86645  

我找到了解决办法。我使用下面的查询来实现我想要的

dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
31-Dec-15   1206    1676266 1.4  
31-Jan-16   1206    1676266 1.4  
29-Feb-16   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
31-Mar-16   1206    1676266 1.2  
02-Apr-16   1206    1676266 1.2  
03-Apr-16   1206    1676266 1.2  
11-Apr-16   1206    1676266 1.2  
14-Apr-16   1206    1676266 1.4  
16-Apr-16   1206    1676266 1.4  
18-Dec-14   2804    1676266 5955  
30-Dec-15   2804    1676266 5955  
31-Jan-16   2804    1676266 5955  
29-Feb-16   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
18-Mar-16   2804    1676266 5955  
19-Mar-16   2804    1676266 5955  
20-Mar-16   2804    1676266 8587  
21-Mar-16   2804    1676266 8587  
23-Mar-16   2804    1676266 8587  
24-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
30-Dec-15   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
29-Feb-16   2804    1676775 86645  
17-Mar-16   2804    1676775 86645 
dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
18-Dec-14   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
20-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
删除 选择 t、 *, 按S_ID、FLD_ID、DT dup的val顺序划分的行数, val-LAGval,1,0除以S_ID,FLD_ID按DT排序作为Lag_V -decodeval,LAGval,1,0按S_ID划分,FLD_ID按dt排序,1,0-作为Lag_VC 从我的 其中Lag_V=0,dup>1

dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
31-Dec-15   1206    1676266 1.4  
31-Jan-16   1206    1676266 1.4  
29-Feb-16   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
31-Mar-16   1206    1676266 1.2  
02-Apr-16   1206    1676266 1.2  
03-Apr-16   1206    1676266 1.2  
11-Apr-16   1206    1676266 1.2  
14-Apr-16   1206    1676266 1.4  
16-Apr-16   1206    1676266 1.4  
18-Dec-14   2804    1676266 5955  
30-Dec-15   2804    1676266 5955  
31-Jan-16   2804    1676266 5955  
29-Feb-16   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
18-Mar-16   2804    1676266 5955  
19-Mar-16   2804    1676266 5955  
20-Mar-16   2804    1676266 8587  
21-Mar-16   2804    1676266 8587  
23-Mar-16   2804    1676266 8587  
24-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
30-Dec-15   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
29-Feb-16   2804    1676775 86645  
17-Mar-16   2804    1676775 86645 
dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
18-Dec-14   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
20-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
注意:LAG_V用于数字字段,而alias LAG_VC中的注释解码行可用于字符字段

dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
31-Dec-15   1206    1676266 1.4  
31-Jan-16   1206    1676266 1.4  
29-Feb-16   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
31-Mar-16   1206    1676266 1.2  
02-Apr-16   1206    1676266 1.2  
03-Apr-16   1206    1676266 1.2  
11-Apr-16   1206    1676266 1.2  
14-Apr-16   1206    1676266 1.4  
16-Apr-16   1206    1676266 1.4  
18-Dec-14   2804    1676266 5955  
30-Dec-15   2804    1676266 5955  
31-Jan-16   2804    1676266 5955  
29-Feb-16   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
18-Mar-16   2804    1676266 5955  
19-Mar-16   2804    1676266 5955  
20-Mar-16   2804    1676266 8587  
21-Mar-16   2804    1676266 8587  
23-Mar-16   2804    1676266 8587  
24-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
30-Dec-15   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
29-Feb-16   2804    1676775 86645  
17-Mar-16   2804    1676775 86645 
dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
18-Dec-14   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
20-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  

谢谢大家回答我的问题

谢谢QSD。您希望根据什么标准选择要保留的副本?按日期?同样,在您的示例中,看起来您的目标是最多复制一个副本,而不是更多。这是正确的吗?
dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
31-Dec-15   1206    1676266 1.4  
31-Jan-16   1206    1676266 1.4  
29-Feb-16   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
31-Mar-16   1206    1676266 1.2  
02-Apr-16   1206    1676266 1.2  
03-Apr-16   1206    1676266 1.2  
11-Apr-16   1206    1676266 1.2  
14-Apr-16   1206    1676266 1.4  
16-Apr-16   1206    1676266 1.4  
18-Dec-14   2804    1676266 5955  
30-Dec-15   2804    1676266 5955  
31-Jan-16   2804    1676266 5955  
29-Feb-16   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
18-Mar-16   2804    1676266 5955  
19-Mar-16   2804    1676266 5955  
20-Mar-16   2804    1676266 8587  
21-Mar-16   2804    1676266 8587  
23-Mar-16   2804    1676266 8587  
24-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
30-Dec-15   2804    1676775 86645  
31-Jan-16   2804    1676775 86640  
29-Feb-16   2804    1676775 86645  
17-Mar-16   2804    1676775 86645 
dt          Fld_ID  S_ID    Val  
18-Dec-15   1206    1676266 1.4  
17-Mar-16   1206    1676266 1.2  
18-Dec-14   2804    1676266 5955  
17-Mar-16   2804    1676266 6895  
20-Mar-16   2804    1676266 8587  
18-Dec-14   2804    1676775 86645  
31-Jan-16   2804    1676775 86640