Welcome 微信登录

首页 / 数据库 / MySQL / 数据库技巧 MySql中删除重复记录

表结构:
create table tab_name

id tinyint,
name varchar(10),
age tinyint,
phone varchar(15));

原始内容: select * from tab_name;
id name age phone
1 zhangsan 10 12345678910
2 lisi 28 98765432110
3 wangwu 33 45678912312
4 zhaoliu 45 78945612354
2 lisi 28 98765432110
3 wangwu 33 45678912312

删除重复后检索: select * from tab_name group by id,name,age,phone;
id name age phone
1 zhangsan 10 12345678910
2 lisi 28 98765432110
3 wangwu 33 45678912312
4 zhaoliu 45 78945612354

创建另一张表保存删除重复后内容: create table temp select * from tab_name group by id,name,age,phone;

删除原表内容: delete from tab_name;

导入正确记录: insert into tab_name select * from temp;

如只想删除部份记录可带where限定条件: select * from tab_name where id=1 group by id,name,age,phone;小技巧 Oracle杀死死锁进程问题的解决mysql数据库优化参数详细设置与调整相关资讯      mysql 
  • 数据库服务器 MySQL  (08/15/2013 06:50:23)
  • MySQL 5.6 GA 及逃亡潮  (02/08/2013 14:36:35)
  • MySQL 5.5.22、5.1.62、5.0.96全线  (03/22/2012 19:03:49)
  • MySQL Administrator连接VMWare下  (05/24/2013 09:20:58)
  • MySQL 5.1.68 发布  (02/05/2013 08:37:47)
  • CentOS 5.2+MySQL+Heartbeat双机互  (01/29/2012 11:16:55)
本文评论 查看全部评论 (0)
表情: 姓名: 字数