①用rowid方法
据据oracle带的rowid属性,进行判断,是否存在重复,语句如下:
查数据:
select * from table1 a where rowid
!=(select max(rowid)
from table1 b where a.name1=b.name1 and
删数据:
delete from table1 a where rowid
select count(num), max(name) from student --列出重复的记录数,并列出他的name属性
group by num
having count(num) 1 --按num分组后找出表中num列重复,即出现次数大于一次
delete from student
having count(num) 1
这样的话就把所有重复的都删除了.
create table table_new as select distinct *
from table1 minux
truncate table table1;
insert into table1 select * from table_new;
select t.a,t.b,t.c from
(select a,b,c from 表A group by a,b,c) t
没用到什么函数,就一个group by ,是用来去重的,
你可以把括号里的先执行,看下结果,外边就是一个从括号里再选出a,b两个字段
对重复字段只取包括其中一个的记录的方法就这样,还可以通过唯一id(如果存在的话,没有的话,用row_number)比较
如
select * from cb_rqrj_djclhs a
where ID in (select min(id) from cb_rqrj_djclhs where gjzy=a.gjzy)
以上就是土嘎嘎小编为大家整理的oracle怎么实现剃重相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!