oracle删除重复数据(部分重复,完全重复)
1.部分重复(表中有主键)
学生表(student)
字段:id,xh(学号),xm(姓名),nj(年级)
表中含有部分字段重复(xm姓名,nj年级),可以通过主键来删除重复数据
--姓名重复--获取重复姓名的学生信息(其中一条数据)
Select a.id
From (Select v.*, Row_Number() Over(Partition By v.xm Order By v.xm) NmFrom student v) a
Where a.Nm > 1;--删除数据
delete from student v where 1=1 and Exists (select 1 from (Select a.id
From (Select v.*, Row_Number() Over(Partition By v.xm Order By v.xm) NmFrom student v) a
Where a.Nm > 1) where a.id = v.id )
2.完全重复(表没有主键)
由于某些表的特殊性没有主键,需要删除完全重复的数据且只保留一条
利用表的rowid 来删除数据
--获取重复数据的 rowidSelect a.id,a.rowid
From (Select v.*, Row_Number() Over(Partition By v.Id Order By v.Id) NmFrom student v) a
Where a.Nm > 1 Order By a.Id--删除数据
Delete From student v Where 1=1 And Exists (Select 1 from (
Select a.id,a.rowid
From (Select v.*, Row_Number() Over(Partition By v.Id Order By v.Id) NmFrom student v) a
Where a.Nm > 1 Order By a.Id) b Where b.rowid = v.rowid)
oracle删除重复数据(部分重复,完全重复)相关推荐
- 删除oracle中的一列数据,Oracle删除表数据
本篇文章帮大家学习Oracle删除表数据,包含了Oracle删除表数据使用方法.操作技巧.实例演示和注意事项,有一定的学习价值,大家可以用来参考. 在本教程中将学习如何使用Oracle DELETE语 ...
- 表之sql删除重复数据、查找去除重复数据、DISTINCT用法
目录 一.查找去除重复数据 二.删除重复数据 三.DISTINCT用法 一.查找去除重复数据 数据如图: id可以理解为uuid,person_sort_code可以理解为唯一的标识,但是唯一标识重复 ...
- mysql scrapy 重复数据_mysql数据库如何处理重复数据?
前言 前段时间,很多人问我能不能写一些数据库的文章,正好自己在测试mysql数据库性能的时候,出现了一个问题,也就是出现了很多重复的数据,想起来自己long long ago写过一篇类似的,仅此就拿来 ...
- mysql中如何去除重复数据_MySQL如何去除重复数据?
这篇文章主要介绍了MySQL 去除重复数据实例详解的相关资料,需要的朋友可以参考下 MySQL 去除重复数据实例详解 有两个意义上的重复记录,一是完全重复的记录,也即所有字段均都重复,二是部分字段重复 ...
- 重复数据_MongoDB 自动过滤重复数据
摘要:使用 update_one() 方法而不是 insert_one() 插入数据. 相信你一定有过这样的经历:大晚上好不容易写好一个爬虫,添加了种种可能出现的异常处理,测试了很多遍都没有问题,点击 ...
- linux列表去重复数据,Linux常用去除重复数据口令
一.uniq干什么用的 文本中的重复行,基本上不是我们所要的,所以就要去除掉.linux下有其他命令可以去除重复行,但是我觉得uniq还是比较方便的一个.使用uniq的时候要注意以下二点 1,对文本操 ...
- oracle删除表数据带条件,Oracle删除表数据
在本教程中将学习如何使用Oracle DELETE语句从表中删除一行或多行数据记录. 要从表中删除一行或多行,请按如下所示使用Oracle DELETE语句: DELETE FROM table_na ...
- oracle删除表数据的两种的方式
平时写sql中我们都会用到删除语句,而平时删除表数据的时候我们经常会用到两种方式: 在oracle中,truncate.delete都可以删除表数据,具体的区别以及sql语法如下: truncate ...
- oracle删除的数据没有commit,在Oracle中误删除数据后并commit后的数据恢复办法
在Oracle中误删除数据后并commit后的数据恢复办法 背景:表A数据误操作,被delete了,恢复. --1.先备份A表当前数据. --2.查询某 在Oracle中误删除数据后并commit后的 ...
- Oracle删除表数据TRUNCATE TABLE 命令
本文导读:删除表中的数据的方法有delete,truncate, 其中TRUNCATE TABLE用于删除表中的所有行,而不记录单个行删除操作.TRUNCATE TABLE 与没有 WHERE 子句的 ...
最新文章
- React-Native Navigator 过渡动画卡顿的解决方案
- Java 多线程之 synchronized 和 volatile 的比较
- gearman服务连接php,Gearman异步服务安装使用
- 比亚迪:2月新能源汽车销量14429辆 同比增长73%
- linux设备文件列表,linux 设备文件
- 微软若“无故”解雇暴雪 CEO,将付 1500 万美元“分手费”
- node.js 事件循环
- Palindrome Number
- 【.bash_profile 与 .bashrc 的区别】
- 安装WindowBuilder后,新建JFrame文件,不能查看Design
- Java解析cron表达式
- 拒绝安利:安利的真相 丁黎
- python两个csv表数据合并_python – 根据列中的数据合并两个CSV文件
- 客户机键盘某些键失灵
- linux mysql 服务停止不了_Linux服务器mysql数据库自动停止的解决方法
- java照片水印怎么做的_java图片加水印_百度经验
- python打印日志(控制台内容输出)
- 小学生计算机房的简笔画,小学生美丽的校园简笔画图片欣赏
- 890-git安装教程github创建仓库
- matlab熔断器,Resilience4j 熔断器