1 / 7
文档名称:

总结mysql去除数据表中的重复数据 - 北漂小石的博客.doc

格式:doc   大小:27KB   页数:7页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

总结mysql去除数据表中的重复数据 - 北漂小石的博客.doc

上传人:raojun00001 2020/7/9 文件大小:27 KB

下载得到文件列表

总结mysql去除数据表中的重复数据 - 北漂小石的博客.doc

文档介绍

文档介绍:总结mysql去除数据表中的重复数据-北漂小石的博客总结mysql去除数据表中的重复数据作者:niutian365日期:2008-03-12字体大小:小中大表结构:createtabletest(sidint(11)notnulldefault‘0’,uidint(11)notnull,utypeint(2)notnull,namevarchar(32)notnull,ageint(3)notnulldefault‘0’,phonevarchar(15)notnull);原始内容:select*fromtest;iduidutypenameagephone110zhangsan10[1**********]221lisi28[1**********]331wangwu33[1**********]441zhaoliu45[1**********]221lisi28[1**********]331wangwu33[1**********]这个表结构字段uid与utype应该是唯一索引,但忘了设置了,现在已经有超过100万条数据再重新设置唯一索引的话,必须先剔除重复数据比如上例中id=3,2重复了,只能留一条;有的数据重复了4次以上有什么好办法剔除重复数据呢?DeletefromTempAwhereidnotin(selectmax(),)1、确认一下基表和过渡表的数据量。mysqlselectcount(*)fromtest;+----------+|count(*)|+----------+|1572864|+----------+1rowinset()selectcount(*)fromtmp;+----------+|count(*)|+----------+|0|+----------+1rowinset()2、过滤重复记录,将基表数据插入过渡表createtabletempselect*fromtestgroupbyid,uid,name,age,phone;QueryOK,4rowsaffected()Records:4Duplicates:0Warnings:0//如只想删除部份记录可带where限定条件:select*fromtab_namewhereid=1groupbyid,name,age,phone;3、删除基表数据,过渡表数据回插。mysqltruncatetabletest;QueryOK,1572864rowsaffected()mysq