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://www.shufengxianlan.com/qtweb/news35/274985.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联