oracle数据库中怎样删除一个表的重复数据。

oracle数据库中怎样删除一个表的重复数据。,第1张

这个问题就是要删除表中重复的记录,查询的sql语句如下:

select id,name from (

select id,name,row_numer() over(partition by id,name order by id,name) rn from tableA)

where rn>1;

删除的sql语句如下:

DELETE tableA WHERE ROWNUM = (SELECT ROWNUM

FROM (SELECT id,name,

ROW_NUMBER() OVER(PARTITION BY id,name ORDER BY id,name) RN

FROM tableA )

WHERE RN > 1);

1、把不重复的数据转存到临时表

select

name,time,min(id)

into

#tmp

from

表名

group

by

name,time;

2、清空原表

truncate

table

表名;

3、把数据导回

insert

itno

表名

select

from

#tmp;

4、删除临时表

drop

table

#tmp;

---

以上,希望对你有所帮助。

以上就是关于oracle数据库中怎样删除一个表的重复数据。全部的内容,包括:oracle数据库中怎样删除一个表的重复数据。、关于删除SQL数据库表里重复数据的问题、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9668172.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存