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

MYSQL
实际应用:MySQL5存储过程编写
解决MySQL server has gone away
如何关闭MySQL数据库中错误提示音
解决MySQL中忽略用户的现象
带你轻松接触MySQL数据库的异常处理
MySQL字符集:保证不发生乱码的方法
如何对MySQL 服务器进行调优
MySQL忘记超级用户口令的解决办法
一个检测MySQL状态的脚本
公共MySQL的数据库服务器层
Linux下MySQL数据库开发技术
Mysql基础教程:新手上路操作必看
Mysql教程 对MySQL中的锁机制的总结
巧实例:如何在.NET中访问MySQL数据库
PHP和MYSQL数据库合理且有效的结合在一起
MySQL数据库中修改密码访问限制设置详解
解析PHP连接MYSQL的两种方法
mysql 8小时空闲后连接超时的问题
如何加大MYSQL中的最大连接数
SQL实现动态交叉表

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 110 ::
收藏到网摘: 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;