求sql语句:检索得到重复数据 我的一个表table中有A,B,C,D四个字段,我想要用A,B,C做联合主键,可是提醒我有重复数据。请问,我应该怎么检索出来这三个字段的组合的重复数据?比如说:A B C 1 2 3 1 2 5 1 2 3第一条和第二条不算重复数据,第一条和第三条才算重复数据。请问应该怎么检索? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 select * from ( select a,b,c ,count(*) from t group by a,b,c having count(*)>1 ) t1 分组求count,然后对于count>1的记录输出。 正解要删除重复数据可以在此基础上利用rowid属性。 select * from (select rowid, count(1) over(partition by a, b, c) rn from t) where rn > 1; 利用rowidselect * from t a where a.rowid=(select max(rowid) from t b where a.a=b.aa.b=b.b and a.c=b.c) 怎么关闭哪个WEB管理?或者删除? ora-00918 未明确定义列 tnsnames.ora 和 listener.ora 和 li 以及hosts 配置问题 ??? 数据库查询!!在线急等答案啊 求一条SQL语句 如何迁移索引 紧急求助!ORACLE核心进程无法启动该如何解决? 请问由系统管理员设置的触发器被用户程序激发后其执行时的权限是用户权限还是系统权限? 在oracle里面由程序随时创建一个表,想以创建时间命名该表,该怎么做?50!在线等! 急: 请问-逻辑恢复数据库出错的原因 !!! 存储过程中临时表的问题 我想把SqA返回給某個變量,要怎么實現啊
要删除重复数据可以在此基础上利用rowid属性。
select * from (select rowid, count(1) over(partition by a, b, c) rn from t) where rn > 1;
select * from t a where a.rowid=(select max(rowid) from t b where a.a=b.a
a.b=b.b and a.c=b.c)