MySQL数据库如何删除表中部分关键字段重复的记录

MySQL数据库中如何删除部分关键字段重复的记录呢?本文我们通过一个例子来介绍这一删除方法,接下来我们先说一说这个例子。

创新互联秉承实现全网价值营销的理念,以专业定制企业官网,成都做网站、成都网站设计,小程序开发,网页设计制作,手机网站制作全网整合营销推广帮助传统企业实现“互联网+”转型升级专业定制企业官网,公司注重人才、技术和管理,汇聚了一批优秀的互联网技术人才,对客户都以感恩的心态奉献自己的专业和所长。

首先看一下Statistic表结构:

处理样本:

主要实现目的:

删除Date Server Item SubItem 完全相同,Id肯定不同,Value可能相同的记录。

比如:

 2011-07-27 | mx1.dns.com.cn | SEND_MAIL | TOTAL| 14522 |          | 229  【删除】

 2011-07-27 | mx1.dns.com.cn | SEND_MAIL | TOTAL| 14795 |          | 248  【保留】

实现过程:

***步:创建与Statistic表结构完全相同的临时表。

 
 
 
 
  1. use Statistic;  
  2.  
  3. create table s_tmp as select * from Statistic where 1=2; 

第二步:根据Id(自动增长)提取较新数据到临时表

 
 
 
 
  1. insert into s_tmp select a.* from Statistic a,Statistic b where   
  2.  
  3. a.Date=b.Date and a.Server=b.Server and a.Key=b.Key and a.SubKey=b.SubKey and a.id > b.id; 

第三步:根据临时表里的数据的日期信息,将原表的对应日期的数据删除

 
 
 
 
  1. delete  from Statistic where Date in (select distinct Date  from s_tmp ); 

第四步:将临时表里的数据导入Statistic

 
 
 
 
  1. insert into Statistic select * from  s_tmp; 

第五步:***清空临时表

 
 
 
 
  1. delete * from s_tmp; 

实现结果:(去重后)

关于删除MySQL表部分关键字段重复的方法就介绍到这里了,如果您想了解更多关于MySQL数据库的知识,可以到这里看一下:http://database./mysql/,相信一定能够带给您收获的。


文章名称:MySQL数据库如何删除表中部分关键字段重复的记录
网站链接:http://bzwzjz.com/article/djsigcj.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 温江网站设计 营销型网站建设 成都网站设计 企业网站设计 成都网站制作 网站制作 高端网站设计 网站制作公司 定制网站建设多少钱 成都网站设计 成都网站制作公司 成都网站建设 H5网站制作 网站建设 成都网站建设 成都商城网站制作 重庆企业网站建设 外贸网站建设 营销型网站建设 LED网站设计方案 网站建设费用 重庆网站建设