mysql中如何去除重复数据_mysql数据库如何去除重复数据
mysql数据库去除重复数据的方法:1、查询需要删除的记录,会保留一条记录;2、删除重复记录,只保留一条记录,代码为【delete a from test1 a, (...)as bid from test1 c where..】。
mysql数据库去除重复数据的方法:
1、查询需要删除的记录,会保留一条记录。select a.id,a.subject,a.RECEIVER from test1 a left join (select c.subject,c.RECEIVER ,max(c.id) as bid from test1 c where status=0 GROUP BY RECEIVER,SUBJECT having count(1) >1) b on a.id< b.bid where a.subject=b.subject and a.RECEIVER = b.RECEIVER and a.id < b.bid
2、删除重复记录,只保留一条记录。注意,subject,RECEIVER 要索引,否则会很慢的。delete a from test1 a, (select c.subject,c.RECEIVER ,max(c.id) as bid from test1 c where status=0 GROUP BY RECEIVER,SUBJECT having count(1) >1) b where a.subject=b.subject and a.RECEIVER = b.RECEIVER and a.id < b.bid;
3、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断select * from people where peopleId in (select peopleId from people group by peopleId having count(peopleId) > 1)
4、删除表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断,只留有rowid最小的记录delete from people where peopleId in (select peopleId from people group by peopleId having count(peopleId) > 1) and rowid not in (select min(rowid) from people group by peopleId having count(peopleId )>1)
5、删除表中多余的重复记录(多个字段),只留有rowid最小的记录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)
看来想偷懒使用一句命令完成这个事好像不太显示,还是老老实实的分步处理吧,思路先建立复制一个临时表,然后对比临时表内的数据,删除主表里的数据alter table tableName add autoID int auto_increment not null;
create table tmp select min(autoID) as autoID from tableName group by Name,Address;
create table tmp2 select tableName.* from tableName,tmp where tableName.autoID = tmp.autoID;
drop table tableName;
rename table tmp2 to tableName;更多相关免费学习推荐:mysql教程(视频)
mysql中如何去除重复数据_mysql数据库如何去除重复数据相关推荐
- mysql 处理数据_MySQL数据库,如何处理重复的数据?
前言 这是一个基本问题,这篇文章是我很早之前遇到的一种情况,后来在学习视频的时候又遇到了一次,因此给出一个总结.其实解决能否插入重复数据的问题,一般情况下是有两个思路,就像治水一样,第一个就是从源头, ...
- mysql中更新的命令是_MySQL 语言中,更新表数据的命令是( )。_学小易找答案
[简答题]MySQL 语言中包含数都定义语言.数据操纵语言和数据控制语言,分别有哪些功能? [单选题]查询员工工资信息时,结果按工资降序排列,正确的是( ). [简答题]arrayList测验 [填空 ...
- mysql 异常关机后 无法查数据_MySQL数据库非法关机造成数据表损坏怎么排查 | 学步园...
该篇文章我们介绍由于非法硬件关机,造成了MySQL数据库的数据表损坏,数据库不能正常运行的一个实例.下面学步园小编来讲解下MySQL数据库非法关机造成数据表损坏怎么排查? MySQL数据库非法关机造成 ...
- mysql插10万条数据_MySQL数据库插入100w条数据要花多久?
MySQL数据库插入100w条数据要花多久? 1.多线程插入(单表) 2.多线程插入(多表) 3.预处理SQL 4.多值插入SQL 5.事务(N条提交一次) # 多线程插入(单表) 问:为何对同一个表 ...
- mysql查询单表的销售额_MYsql数据库单表百万数据量查询
最近总在意自己的网页刷新数据的速度,mysql5.7和mysql8.0单表数据库导入百万甚至千万数据的时候,会不会卡死,会不会慢? 因此编写测试用例,通过Navicat Premium来查询单表的时间 ...
- mysql 删除时间范围数据_mysql数据库按时间删除数据总结
今天访问程序时报如下异常: 主要原因如下: 数据库所在磁盘空间不够所致. 于是登录数据库所在的服务器,查看了下数据库所占的磁盘空间如下: 可以看到磁盘的33G,被全部占满了,于是就开始了数据库表的清理 ...
- mysql 导出中间 数据_MYSQL数据库之间的数据导出与导入
源数据库地址: 172.16.1.7 目标数据库地址: 172.16.1.51 步骤: (1) 进入172.16.1.7服务器,登录mysql数据库 mysqldump -uusername -ppa ...
- mysql中获取一天、一周、一月时间数据的各种sql语句写法
来源:http://www.jb51.net/article/50505.htm 今天抽时间整理了一篇mysql中与天.周.月有关的时间数据的sql语句的各种写法,部分是收集资料,全部手工整理,自己学 ...
- mysql怎么加载bak文件_MySQL数据库(表)的导入导出(备份和还原)
一)在同一个数据库服务器上面进行数据表间的数据导入导出: 1. 如果表tb1和tb2的结构是完全一样的,则使用以下的命令就可以将表tb1中的数据导入到表tb2中: insert into db2.tb ...
最新文章
- C++ #if、#elif、#else和#endif指令 的使用
- oracle找到引起账户锁定的ip,Oracle 找到引起账户锁定的IP
- OpenCv cv::Mat 转 IplImage 函数
- [转帖]TLS 版本问题
- Mysql和Oracle获取自增主键
- Centos6.5硬盘故障修复
- 高性能MySQL(4)——查询性能优化
- python可视化报表制作教程_如何使用Python快速制作可视化报表
- 正则表达式:贪婪匹配与非贪婪匹配
- 广州 智播客 学工部_播客:30岁的水管工如何转变职业并成为全职开发人员
- 收藏 | 详解PyTorch中的ModuleList和Sequential
- Mysql如何清空数据库的单表数据 , 所有表数据
- Pascal 转 C++ 教程2
- 《大数据日知录》读书笔记 + 回顾补充(20190716 - 2019MMdd)
- Win11 25179.1000补丁推送了!
- vue-video-player 断点续播
- 百度地图API(WEB端/JavaScript API)--实际运用与扩展
- Java中的23种设计模式
- 经典神经网络论文超详细解读(三)——GoogLeNet InceptionV1学习笔记(翻译+精读+代码复现)
- 创芯科技-CAN收发器使用
热门文章
- 如何从“固定型”思维模式转化为“成长型”思维模式
- css3中-moz、-ms、-webkit、-o 各是什么意思
- linux调节伽马值软件,四个 Linux 下的“护眼”软件
- C++:求平均分(针对基本数据类型的应用)
- 控制反转 vs 依赖注入
- Moment.js 文档
- java tea属于红茶吗_武夷岩茶属于红茶吗
- 日历控件(bootstrap-datetimepicker.js)
- CAD学习笔记中级课【导入导出】
- python基础之布尔运算