- 浏览: 565659 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (237)
- Java (48)
- Flex3 (43)
- Spring (7)
- Hibernate (7)
- 杂文 (2)
- 设计模式 (3)
- 数据库相关 (32)
- Eclipse开发环境 (10)
- C/C++ (1)
- 随笔 (1)
- 生活点滴 (2)
- Flex4 (3)
- Oracle (6)
- SQLServer (6)
- Degrafa (1)
- ActionScript (2)
- JavaScript (11)
- MySQL (8)
- 开源项目 (4)
- AspectJ (0)
- Spring Security (1)
- SSO (0)
- PV3D (2)
- JBPM (1)
- JBoss (0)
- Tomcat (5)
- Struts (1)
- WebService (2)
- 算法 (1)
- 数据结构 (1)
- POI (2)
- Lucene (2)
- 其他 (3)
- Blazeds (2)
- Alternative 3D (0)
- Ibatis (3)
- Intellij (3)
- freemaker (0)
- Maven (5)
- web (4)
- Eclipse (1)
- velocity (1)
- Linux (7)
- CXF (3)
- html (2)
- JVM (1)
最新评论
-
jpsb:
多谢楼主,问题解决,主要就是svn版本不同导致的
Eclipse 导入本地svn项目的问题 -
yycdaizi:
lanmolsz 写道无法同意楼主的说法,楼主所谓的晚捕捉就是 ...
Java异常处理原则 -
lanmolsz:
无法同意楼主的说法,楼主所谓的晚捕捉就是典型的让异常控制程序的 ...
Java异常处理原则 -
cici_new_1987:
...
Java异常处理原则 -
雁行:
倒是怀疑这个功能来着
Eclipse 导入本地svn项目的问题
一、 在Oracle数据库中查询所谓的“重复”记录,根据判断标准可以细分为三种情况:
1.根据单个属性字段判断重复性:
select *
from tableName
where columnName in (select columnName
from tableName
group by columnName
having count(columnName) > 1);
2.根据多个属性字段判断重复性:
select *
from tableName a
where (a.columnName1, a.columnName2) in (select columnName1, columnName2
from tableName
group by columnName1, columnName2
having count(*) > 1);
3.所有属性完全相同的情况:
select distinct * from td_tyorg;
利用上面的SQL语句就可以查询出不相同的记录
---查询重复记录---
select * from tablename where id in (
select id from tablename
group by id
having count(id) > 1;
二、删除重复记录:
1.删除某个字段相同记录(只留下rowid最小的记录,其中rowid为oracle系统自建的字段):
delete from people
where peopleId in (select peopleId
from people
group by peopleId
having count(peopleId) > 1)
and rowid not in (select min(rowid)
from people
group by peopleId
having count(peopleId) > 1);
4、删除表中多余的重复记录(多个字段),只留有rowid最小的记录:
delete from vitae a
where (a.peopleId, a.seq) in (select peopleId, seq
from vitae
group by peopleId, seq
having count(*) > 1)
and rowid not in (select min(rowid)
from vitae
group by peopleId, seq
having count(*) > 1);
PS:如果该表需要删除重复的记录(重复记录保留1条),可以按以下方法删除
select distinct *
into #Tmp
from tableName drop table tableName
select * into tableName from #Tmp drop table #Tmp
发表评论
-
基于Canal的mysql数据库同步ElasticSearch方案实现环境搭建
2020-01-07 20:34 0基于Canal的mysql数据库同步ElasticSear ... -
【转载】【MySQL】sync_binlog innodb_flush_log_at_trx_commit 浅析
2016-11-01 19:18 632本文转载自:http://blog.itpub.net/2 ... -
浅谈乐观锁和悲观锁
2016-01-05 16:46 1877在数据库中 ... -
【转载】MySQL事务隔离级别详解
2015-12-22 19:46 879转载自:http://xm-king.iteye.com/ ... -
SQL Server 特殊字符查询处理
2013-07-26 17:34 661SQL Server 用 like 查询时,可用 % 代表任 ... -
SQL Server CONVERT函数
2013-06-26 14:57 1020本文转载自:http://weishang-java.ite ... -
数据库中的Schema
2013-06-15 10:53 1208本文转载自:http://blog.sina.co ... -
SqlServer数据库性能优化详解
2013-06-13 16:04 17515本文转载自:http://blog ... -
聚簇索引和非聚簇索引
2013-06-10 15:55 1435转载自:http://rbq10829.iteye.com/ ... -
三种查看MySQL数据库版本的方法
2013-06-10 15:19 1504本文转载自:http://www.weste.net/20 ... -
MySQL存储引擎
2013-06-10 14:03 913本文转载自:http://meng ... -
常见范式定义
2013-02-16 16:02 1253据库表结构设计时,遵 ... -
关于Spring编程事务分析
2012-11-18 15:33 1022转载自:http://sailinglee.iteye. ... -
SQLServer字典数据统计SQL
2012-07-26 18:08 1057SELECT 表名=case when a. ... -
SQLServer函数DB_ID和OBJECT_ID
2011-10-17 17:45 2229DB_ID 函数 [System] 返回数据库 ID 号。 语 ... -
SQLServer 获取SQL语句性能数据
2011-09-27 17:27 1209转载自:http://code.iteye.com/blog/ ... -
Union all 和 Union
2010-11-16 10:54 1260在Oracle数据中中如果需要用到数据合并,可以选择用U ... -
Oracle kill session
2010-11-10 17:37 1394第一步:查询被锁表的所关联的session信息 ... -
Oracle 特殊查询
2010-08-13 15:37 9801.查询次大记录: select max(to_n ... -
Oracle 存储过程
2010-08-13 14:11 1095create or replace procedure Pro ...
相关推荐
Oracle查询重复数据与删除重复记录方法,Oracle查询重复数据与删除重复记录方法
oracle中 ,如何删除重复的记录信息
使用Oracle查询并删除重复记录的SQL语句
Oracle数据库删除重复记录的方法
oracle删除重复记录性能分析平时收集,希望能给需要帮助的人提供便利
Oracle查询重复数据并删除,只保留一条记录.docx
比如现在有一人员表 (表名:peosons) 若想将姓名、身份证号、住址这三个字段完全相同的记录...几个删除重复记录的SQL语句 1.用rowid方法 2.用group by方法 3.用distinct方法 1。用rowid方法 据据oracle带的rowid属
2、删除表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断,只留有rowid最小的记录 delete from people where peopleId in (select peopleId from people group by peopleId having count (peopleId) >...
总结的多条oracle删除重复记录的例子
查询及删除oracle重复记录的SQL语句
Oracle数据库删除表中重复记录的方法三则.txt
删除重复记录的方法原理:在Oracle中,每一条记录都有一个rowid,rowid在整个数据库中是唯一的,rowid确定了每条记录是在Oracle中的哪一个数据文件、块、行上。在重复的记录中,可能所有列的内容都相同,但rowid不会...
几个删除重复记录的SQL语句 1.用rowid方法 2.用group by方法 3.用distinct方法 1。用rowid方法
oracle快速删除重复的记录
删除重复记录 删除数据表中的重复记录,包括MySQL、SQL Server、Oracle等
Oracle 查找与删除表中重复记录的步Oracle 查找与删除表中重复记录的步
总结一下几种查找和删除重复记录的方法,适用于有大量重复记录的情况