当前位置: 首页 > 图文教程 > 数据库 > MYSQL > mysql删除表中某一字段重复的记录

MYSQL
MySQL 5.0默认100连接数的修改
如何使用"MySQL-Proxy"实现读写分离
phpMyAdmin下载、安装和使用入门
安装phpMyAdmin数据库管理软件
关于Mysql数据库导致CPU很高的问题解决
Mysql数据库的导入导出 和 Liunx的权限
MySQL InnoDB存储引擎的一些参数
MySQL InnoDB存储引擎的事务隔离级别
MySQL中InnoDB和MyISAM类型的差别
如何在.NET中访问MySQL数据库
关于 mysql5 改密码后不能登录问题的解答
初学者必读 MySQL 数据库常见问题汇总
MySQL字符集:怎样才能保证不发生乱码
详细讲解优化MySQL数据库性能的十个参数
教你使用MySQL触发器自动更新memcache
SQL存储过程和触发不能使用USE的应对方法
MySQL怎样处理一个溢出的磁盘
MySQL出错代码含义列表解释一表通
服务器安装MySQL教程及注意事项
完美解决mysql中文乱码的问题

MYSQL 中的 mysql删除表中某一字段重复的记录


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 101 ::
收藏到网摘: n/a

一般大家也许会碰到这个问题,大家可以参考下,讲的比较详细

比如,表:event(id int(10) auto_increment primary key,
sid int(10)not null,
detail text)

我想删除表event中sid重复的记录,请问有没有这样SQL语句?或是通过其它方法?

复制代码 代码如下:

delete from event as e
where id != (select min(id) from event where sid=e.sid);

or
复制代码 代码如下:

delete from event
where sid not in (select mid from (select sid ,min(id) as mid from event group by sid))

应该是有用的代码
复制代码 代码如下:

alter ignore table event add unique index idu_sid (sid);
alter table event drop index idu_sid;