在oracle数据库中,怎样查询出只有一个字段的表的重复数据?

例如:怎样把下表中含有1和4的行查询出来。写出最简单的方法。
id
---------
1
2
1
1
4
1
4
5
如果表中有多个字段呢?怎样查?

方法一:可以通过group by 进行分组。
sql:select username,count(username) from tablename grop by username;
解释:以上sql就是通过分组函数读取出tablename表中username的值和每个不同值的统计个数。
方法二:可以通过distinct函数 进行去重查询。
sql:select distinct username from tablename
解释:本sql就是查询出所有的tablename表中的username值(不重复)。
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-12-21
SELECT ID FROM TABLE WHERE ID IN (SELECT ID FROM TABLE GROUP BY ID HAVING COUNT(ID) > 1)..一个表有多个字段也是类似的,至于不想显示count(*)去掉就可以了
第2个回答  2012-12-21
select ID, COUNT(*) FROM TAB
GROUP BY ID
HAVING COUNT(*)>1追问

你的方法有可行性,但是如果我不想让我查询出来的结果显示count(*)列,怎么办?

第3个回答  2012-12-21
假如表名为t

select id from t where id in (select id from t group by id having count(id) > 1)本回答被提问者采纳

如何确定Oracle数据库表中重复的记录
一、自关联查询方法 Oracle系统中,对于所有的表都存在一个唯一的列,这就是rowid。对该列使用最大(max)或者最小(min)函数可以非常容易地确定重复的行。二、GROUPBY\/HAVING查询方法 利用分组函数GROUPBY\/HAVING也很容易确定重复的行。以需要创建唯一索引的列分组并统计每组的个数,很明显如果组中记录数超...

在oracle中怎么查一个表中的的一个字段的重复数据
select testid,count(1) from testtable group by testid having count(1)>1 count(1)就是重复在数量 如何查询重复的数据 select 字段1,字段2,count(*) from 表名 group by 字段1,字段2 having count(*) > 1 PS:将上面的>号改为=号就可以查询出没有重复的数据了。Oracle删除重复数据的SQ...

如何解决Oracle数据库中重复数据的方法步骤
首先查找重复数据 select 字段1,字段2,count(*) from 表名 groupby 字段1,字段2 havingcount(*) 1 将上面的号改为=号就可以查询出没有重复的数据了。想要删除这些重复的数据,可以使用下面语句进行删除:deletefrom 表名 a where 字段1,字段2 in (select 字段1,字段2,count(*) from 表名 gr...

如何查找Oracle数据库中的重复记录
方法1:Select column from table_name Group by column Having count(column)>1;

oracle如何删除重复数据oracle如何删除重复数据只保留一条
重复数据可能有两种情况。第一个是时间表中只有部分字段相同,第二个是两行记录完全相同。Oracle数据库重复数据删除技术具有以下优势:更大的备份容量、持续的数据验证、更高的数据恢复服务水平、方便的备份数据容灾。首先,删除字段中的一些重复数据。先说如何查询重复数据。以下语句可以找出哪些数据是重复的:...

Oracle数据库重复数据删除的几种方法
重复的数据可能有这样两种情况,第一种时表中只有某些字段一样,第二种是两行记录完全一样。Oracle数据库重复数据删除技术有如下优势:更大的备份容量、数据能得到持续验证、有更高的数据恢复服务水平、方便实现备份数据的容灾。一、删除部分字段重复数据先来谈谈如何查询重复的数据吧。下面语句可以查询出...

oracle数据库,多条数据中有一个字段(name)有重复记录,但是其他字段不重 ...
问题是你其它字段不重复,同一个name,其实有多条数据,你按什么逻辑取数据,那些不同的字段怎么筛选。如果随便取一条的话,select * from table where name='' where rownum=1;就返回一条

oracle如何查询重复数据然后全部显示,举例:一份Excel中有100条数据,只 ...
在oracle中,每一条记录都有一个rowid,rowid在整个数据库中是唯一的,rowid确定了每条记录是oracle中的哪一个数据文件、块、行上。在重复的记录中,可能所有列的内容都相同,但rowid不会相同。使用rowid,SQL语句如下:select * from tbl a where rowid not in (select max(b.rowid) from tbl b ...

oracle 查询所有字段,某字段重复只显示一条
具体操作步骤如下:一,oracle数据库,情景:表(客户-业务员)中数据都不完全重复,但是可能多条数据其中某些字段重复。我想要取得表中符合条件的记录,但是这些记录中的客户id和客户名称发生重复的话只能留一个。二,如上图我想找出“冯冬梅”负责的所有客户,但是由于她属于多个部门,此表存储的是不同...

如何查找Oracle数据库中的重复记录
使用SQL查看。如果有主键,那么是没有重复数据的。如果没有主键,那么按照所有字段分组,count(*) 如果count值大于1,则表示重复。

相似回答