在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

oracle中如何删除重数据

114次阅读
没有评论

共计 2180 个字符,预计需要花费 6 分钟才能阅读完成。

今天就跟大家聊聊有关 oracle 中如何删除重数据,可能很多人都不太了解,为了让大家更加了解,丸趣 TV 小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

前期准备

创建测试表

create table salary( 

  staffid   int, 

  staff   varchar(15)  

);

模拟重复数据

insert into salary values(1, a

insert into salary values(2, s

insert into salary values(3, ert

insert into salary values(4, d

insert into salary values(5, b

insert into salary values(1, a

insert into salary values(2, s

insert into salary values(3, ert

insert into salary values(4, d

insert into salary values(5, b

insert into salary values(1, a

insert into salary values(2, s

insert into salary values(3, ert

insert into salary values(4, d

insert into salary values(5, b

insert into salary values(10, aaaa

insert into salary values(20, sass

insert into salary values(30, erwt

insert into salary values(40, dsd

insert into salary values(50, bsdf

insert into salary values(1, oookkk

实验一:模拟单个字段数据重复

select * from salary;

STAFFID STAFF

————— —————

              1 oookkk

              1 a

              2 s

              3 ert

              4 d

              5 b

              1 a

              2 s

              3 ert

              4 d

              5 b

              1 a

              2 s

              3 ert

              4 d

              5 b

             10 aaaa

             20 sass

             30 erwt

             40 dsd

             50 bsdf

21 rows selected

1. 查出重复数据

方法一

SELECT *

FROM salary a

WHERE ((SELECT COUNT(*)

          FROM salary

          WHERE staffid = a.staffid) 1)

ORDER BY staffid 

方法二

select *

  from salary

 where staffid in

(select staffid from salary group by staffid having count(staffid) 1)

删除重复数据,只保留 1 条,其余全部删除

方法一,通过 rowid 删除

delete from salary

where staffid in (select staffid from salary group by staffid  having count(staffid) 1)

and rowid not in (select min(rowid) from salary group by staffid having count(staffid) 1)

实验二:模拟两个个字段数据重复

1. 查询重复记录

方法一

select * from salary a

where (a.staffid,a.staff) in (select staffid,staff from salary group by staffid,staff having count(*) 1)

方法二

SELECT *

FROM salary a

WHERE ((SELECT COUNT(*)

          FROM salary

          WHERE staffid = a.staffid and staff=a.staff) 1)

ORDER BY staffid 

结果,共 15 条

STAFFIDSTAFF

1
     a

1
     a

1
     a

2
     s

2
     s

2
     s

3
     ert

3
     ert

3
     ert

4
     d

4
     d

4
     d

5
     b

5
     b

5
     b

2. 删除重复数据,只保留 1 条,其余全部删除

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)

3. 查看删除后结果

select * from salary;

结果

STAFFIDSTAFF

1
     oookkk

1
     a

2
     s

3
     ert

4
     d

5
     b

10
   aaaa

20
   sass

30
   erwt

40
   dsd

50
   bsdf

看完上述内容,你们对 oracle 中如何删除重数据有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注丸趣 TV 行业资讯频道,感谢大家的支持。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-04发表,共计2180字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 国产精品久久久久三级 | 成人a级视频在线播放 | 无码人妻精品一区二区蜜桃百度 | 国产午夜视频在线 | 麻豆精品 | 欧美黑人性暴力猛交喷水黑人巨大 | 国产免费一区二区视频 | 精品无码一区二区三区亚洲桃色 | 成人三级做爰在线视频 | 综合久久一区二区三区 | 亚洲精品无码专区在线 | 亚洲高清在线观看播放 | 亚洲va久久久噜噜噜久久狠狠 | 日本中文字幕一区二区有码在线 | 99国产超薄丝袜足j在线观看 | 亚洲不卡在线观看 | 久热这里只有精品在线 | 大雞巴亂倫有声小说 | 精品国产人妻一区二区三区 | 欧美情侣性视频 | 99在线精品国产不卡在线观看 | 操一操干一干 | 欧美区一区二区三 | 日韩综合网 | 久久精品亚洲一区二区三区浴池 | 视频在线观看一区二区三区 | 欧美激情在线播放一区二区三区 | 四虎影视永久在线精品免费 | 中国一级淫片 | 四虎成人精品国产永久免费无码 | 午夜视频日本 | 97人人模人人爽人人少妇 | 97se色综合一区二区二区 | 亚洲伊人久久综合 | 国产av无码专区亚洲版综合 | 国产精品久久久午夜夜伦鲁鲁 | 国产黄大片在线观看 | 国产97在线视频观看 | 魔术学姐免费版观看 | 在线观看成人无码中文av天堂 | 国产偷v国产偷v亚洲高清 |