数据库去重(MYSQL和ORACLE)

一、数据库中的去重操作(删除数据库中重复记录的SQL语句)主要有三种方法

(1)、rowid方法

(2)、group by 方法

(3)、distinct方法

1、用rowid方法

根据Oracle带的rowid属性,可以进行判断是否存在重复语句;

(1)、查出表1和表2中name相同的数据

Select * from table1 a Where rowid !=(select max(rowid) from table2 b Where a.name1 = b.name1 And a.name2 = b.name2......) 12345

(2)、删除表1和表2 中name相同的所有数据

Delete from table1 a Where rowid !=(select max(rowid) From table2 b Where a.name1 = b.name1 And a.name2 = b.name2.......) 12345

2、用group by方法

主要用于分组统计,一般都是使用在聚合函数中使用;

(1)、查数据

Select count(num), max(name) from student 列出表中的重复的记录数和学生名字的属性,

Group by num Having count(num) 12

1 并按照num分组后找出表中num列出现次数大于一次的。

(2)、删除数据

Delete from student Group by num Having count(num)>1 123

//删除表中num列所有重复的数据

3、用distinct方法

一般用于比较小的表进行去重,会过滤掉多余的重复记录,返回不重复的记录或字段;

(1)select distinct name from student

相关推荐
2301_763472462 分钟前
使用PyQt5创建现代化的桌面应用程序
jvm·数据库·python
爱学习的阿磊3 分钟前
Web开发与API
jvm·数据库·python
阳光九叶草LXGZXJ7 分钟前
达梦数据库-学习-50-分区表指定分区清理空洞率(交换分区方式)
linux·运维·数据库·sql·学习
Data_Journal7 分钟前
【无标题】
大数据·服务器·前端·数据库·人工智能
qq_192779878 分钟前
Python多线程与多进程:如何选择?(GIL全局解释器锁详解)
jvm·数据库·python
亚控科技10 分钟前
超大型数据中心冷源群控升级:自主可控与智能调控的实践
数据库·智慧楼宇·kingscada·亚控科技·信创scada·大型数据中心
naruto_lnq11 分钟前
NumPy入门:高性能科学计算的基础
jvm·数据库·python
Apple_羊先森19 分钟前
ORACLE数据库巡检SQL脚本--4、检查锁阻塞
数据库·sql·oracle
2301_8223650330 分钟前
实战:用Python分析某电商销售数据
jvm·数据库·python
zhangyifang_0091 小时前
ClickHouse查询报错:Code: 62. DB::Exception: Max query size exceeded:
数据库·clickhouse