【Oracle】去除表中重复的数据
删除表重复数据 (t1表中有重复数据)
1、使用distinct
create table t2 as select * from t1;
create table tmp_t2 as select distinct * from t2;
drop table t2;alter table tmp_t2 rename to t2(需停业务)
------------------------------------------------------------------------------------
2、使用ROWID
delete from t1
where rowid <>( select min(rowid)
from t1 b
where b.c1 = t1.c1
and b.c2 = t1.c2 )
------------------------------------------------------------------------------------
3、用rowid + group by 的方法
delete from t1
where rowid not in (select min(rowid)
from t1 group by c1,c2 );
------------------------------------------------------------------------------------
4.使用分析函数
delete from t1 where rowid not in
(select b.rd from
(select rowid rd,row_number() over(partition by c1,c2 order by c1) rn
from t1) b
where b.rn = 1);
------------------------------------------------------------------------------------
5.使用EXISTS
delete from t1
where not exists (select 1 from (select min(rowid) rid from t1 group by c1,c2) b where b.rid=t1.rowid);
最新文章
- HTTP权威协议笔记-7.缓存
- JMeter学习-002-JMeter环境配置
- python的类和对象——类成员番外篇
- PHP 设计模式 笔记与总结(5)PHP 魔术方法的使用
- 克隆机器后eth1变为eth0问题
- Android listview 制作表格样式+由下往上动画弹出效果实现
- NYOJ 47-过河问题
- UVALive - 7374 Racing Gems 二维非递减子序列
- HDU 5724 Chess (sg函数)
- 关于捕获键盘信息的processDialogkey方法2--具体应用
- PHP程序的一次重构记录
- Winform DataTable 客户端操作数据
- PHP代码为什么不能直接保存HTML文件——&;gt;PHP生成静态页面教程
- CSS 背景 background 讲解
- 配置eNSP和本地电脑上的网卡相连,从而直接从本地电脑连接设备
- 芝麻HTTP:Scrapy小技巧-MySQL存储
- Kali Linux 工具使用中文说明书
- Java课程寒假之开发记账本软件(网页版)之四
- python:递归函数(汉诺塔)
- docker下搭建fastfds集群版