• Oracle 删除重复数据只留一条


     1 查询及删除重复记录的SQL语句
     2  
     3 1、查找表中多余的重复记录,重复记录是根据单个字段(Id)来判断
     4  
     5 select * fromwhere Id in (select Id fromgroup byId having count(Id) > 1)
     6  
     7 2、删除表中多余的重复记录,重复记录是根据单个字段(Id)来判断,只留有rowid最小的记录
     8  
     9 DELETE fromWHERE (id) IN ( SELECT id FROMGROUP BY id HAVING COUNT(id) > 1) AND ROWID NOT IN (SELECT MIN(ROWID) FROMGROUP BY id HAVING COUNT(*) > 1);
    10  
    11 3、查找表中多余的重复记录(多个字段)
    12  
    13 select * from 表 a where (a.Id,a.seq) in(select Id,seq fromgroup by Id,seq having count(*) > 1)
    14  
    15 4、删除表中多余的重复记录(多个字段),只留有rowid最小的记录
    16  
    17 delete from 表 a where (a.Id,a.seq) in (select Id,seq fromgroup by Id,seq having count(*) > 1) and rowid not in (select min(rowid) fromgroup by Id,seq having count(*)>1)
    18  
    19 5、查找表中多余的重复记录(多个字段),不包含rowid最小的记录
    20  
    21 select * from 表 a where (a.Id,a.seq) in (select Id,seq fromgroup by Id,seq having count(*) > 1) and rowid not in (select min(rowid) fromgroup by Id,seq having count(*)>1)
    【签名→→→】【****知其然知其所以然****】 工具只能帮助我们解决我们认识到的问题,解决不了我们都没理解的问题。 不能再把一切扔给框架、容器、工具! 首先理解你的业务逻辑,理解你要实现的功能, 然后搞清楚框架、容器、工具会帮助我们做什么。 只有理解了自己的业务逻辑,理解了自己的代码,理解了自己要用到的第三方代码, 才能真正完美地实现我们需要的功能!
  • 相关阅读:
    C++-蓝桥杯-小数第n位[除法模拟]
    C++-蓝桥杯-合成植物[并查集][模板题]
    Overleaf操作
    三维向量差积,以及应用
    C++-蓝桥杯-分考场[2017真题][搜索][无向图染色]
    C++-POJ1094-Sorting It All Out[拓扑排序][邻接矩阵]
    C++-LUOGU1059-明明的随机数[堆排序]
    C++-快速排序[STL][快速排序][并归排序][堆排序]
    C++-蓝桥杯-波动数组[2014真题][DP优化]
    C++-蓝桥杯-[T1~T3][结果填空题][2015真题][水题]
  • 原文地址:https://www.cnblogs.com/yaowukonga/p/3480576.html
Copyright © 2020-2023  润新知