oracle删除一个表内的重复数据,
查询以及删除一个数据库表内的重复数据。
1.查询表中的多余的重复记录,重复记录是根据单个字段来判断的。
select * from biao where id in (select id from biao group by id having count(id) >1 )
2.删除表中的多余的重复记录,重复记录是根据(id)来判断,只留rowid 最小值。
delete from biao where id in ( select id from biao group by id having count(id) ) and rowid not in ( select min(rowid) from biao group by id having count(id)>1 )
delete from xuesheng
where T_NAME in
(select T_NAME
from xuesheng
group by T_NAME, T_ADDRESS, T_PHONE, T_BIRTHDAY
having count(*) > 1) --重复数据
and rowid not in
(select max(rowid)
from xuesheng
group by T_NAME, T_ADDRESS, T_PHONE, T_BIRTHDAY
having count(*) > 1) --保留一条重复数据
3.删除表中重复的记录(多个字段),
delete from xuesheng
where T_NAME in
(select T_NAME
from xuesheng
group by T_NAME, T_ADDRESS, T_PHONE, T_BIRTHDAY
having count(*) > 1) --不保留重复数据
来自:https://www.cnblogs.com/252e/archive/2012/09/13/2682817.html
oracle删除一个表内的重复数据,的更多相关文章
- 删除一个表中的重复数据同时保留第一次插入那一条以及sql优化
业务:一个表中有很多数据(id为自增主键),在这些数据中有个别数据出现了重复的数据. 目标:需要把这些重复数据删除同时保留第一次插入的那一条数据,还要保持其它的数据不受影响. 解题过程: 第一步:查出 ...
- oracle学习----去除表中的重复数据
重复的数据可能有这样两种情况,第一种:表中只有某些字段一样,第二种:两行记录完全一样.第一.对于部分字段重复数据的删除 先来谈谈如何查询重复的数据吧. 下面语句可以查询出那 ...
- SqlSever基础 delete 删除一个表中的所有数据
镇场诗:---大梦谁觉,水月中建博客.百千磨难,才知世事无常.---今持佛语,技术无量愿学.愿尽所学,铸一良心博客.------------------------------------------ ...
- Oracle、SQLServer 删除表中的重复数据,只保留一条记录
原文地址: https://blog.csdn.net/yangwenxue_admin/article/details/51742426 https://www.cnblogs.com/spring ...
- mysql 删除单表内多个字段重复的数据
mysql 删除单表内多个字段重复的数据 DELETE from lot_log_payflow WHERE (pay_no,sub_flow_type) in () s1) AND id ) s2) ...
- Oracle删除表中的重复数据
Oracle数据库删除表中的重复数据,只保留其中的一条,以两个字段为例,提供两种方法 ①.直接delete重复的数据 delete from table_name t1 where (t1.col1, ...
- Oracle 中用一个表的数据更新另一个表的数据
Oracle 中用一个表的数据更新另一个表的数据 分类: SQL/PLSQL2012-05-04 15:49 4153人阅读 评论(1) 收藏 举报 oraclemergesubqueryinsert ...
- --oracle删除数据库表(无主键)中重复的记录
--oracle删除数据库表(无主键)中重复的记录 1, CREATE TABLE newtable as SELECT distinct * FROM T_SYSTEM_MENU_PRIV; 2, ...
- Oracle查询一个表的数据插入到另一个表
1. 新增一个表,通过另一个表的结构和数据 create table XTHAME.tab1 as select * from DSKNOW.COMBDVERSION 2. 如果表存在: insert ...
随机推荐
- 【Shell】按行读取文件内容
方法1:while循环中执行效率最高,最常用的方法. function while_read_LINE_bottm(){ While read LINE do echo $LINE done < ...
- POST 还是 GET?
POST 还是 GET? 浏览器使用 method 属性设置的方法将表单中的数据传送给服务器进行处理.共有两种方法:POST 方法和 GET 方法. 如果采用 POST 方法,浏览器将会按照下面两步来 ...
- CSS+DIV进度条
<style type="text/css"> .Bar { position: relative; width: 200px; /* 宽度 */ border: 1p ...
- Linux CentOS安装PHP环境
Linux CentOS安装PHP环境 1.下载php环境 wget http://cn2.php.net/distributions/php-7.2.1.tar.gz 更多php版本下载 http ...
- c#.net常见字符串处理方法
1.字符串比较 字符串.ComparTo(目标字符串) "a".ComparTo("b"); 2.查找子串 字符串.IndexOf(子串,查找其实位置) ; 字 ...
- 2015-08-19(i++与++i的思考)
今天看到一个很有趣的东西,关于表达式优先级的问题.如下. ; int j=(i++)+(i++); j的值是多少? 分析:编译器是从左往右编译也就是说编译器先做(i++) 1.(i++)由于是++所以 ...
- Oracle中scott用户下基本表练习SQL语句
--选择部门中30的雇员SELECT * from emp where DEPTNO=30;--列出所有办事员的姓名.部门.编号--采用内连接方式,也就是等值链接,也是最常用的链接SELECT ena ...
- Android DataBinding实现地址三联动
这篇文章主要是写关于Android实现地址三联动的功能,现在附上demo地址:https://github.com/qiuyueL/NewAddressDemo,里面会有详细的注释,以及控件的使用,其 ...
- Topcoder SRM 563 Div1 500 SpellCards
题意 [题目链接]这怎么发链接啊..... 有\(n\)张符卡排成一个队列,每张符卡有两个属性,等级\(li\)和伤害\(di\). 你可以做任意次操作,每次操作为以下二者之一: 把队首的符卡移动到队 ...
- ArcGIS Enterprise 10.5.1 静默安装部署记录(Centos 7.2 minimal)- 4、安装 ArcGIS for Server
安装ArcGIS for Server 解压server安装包,tar -xzvf ArcGIS_Server_Linux_1051_156429.tar.gz 切换到arcgis账户静默安装serv ...