mysql删除重复行的实现方法
表relation
create table relation( id int primary key auto_increment, userId int not null, fanId int not null );
插入几条数据
insert into relation(userId,fanId) values(1,1) ,(1,1) ,(1,1), (2,2),(2,2) ,(3,3),(3,3);
表中的数据
id | userId | fanId |
---|---|---|
1 | 1 | 1 |
2 | 1 | 1 |
3 | 1 | 1 |
4 | 2 | 2 |
5 | 2 | 2 |
6 | 3 | 3 |
7 | 3 | 3 |
去重
delete t from relation s join relation t using(userId,fanId) where s.id<t.id;
总结
以上所述是小编给大家介绍的mysql删除重复行的实现方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
相关推荐
-
删除MySQL重复数据的方法
本文实例讲述了删除MySQL重复数据的方法.分享给大家供大家参考.具体方法如下: 项目背景 在最近做的一个linux性能采集项目中,发现线程的程序入库很慢,再仔细定位,发现数据库里面很多冗余数据.因为在采集中,对于同一台设备,同一个时间点应该只有一个数据,然而,数据库中存入了多个数据.对于如何造成了这个结果,一时没有想清楚,但为了解决入库慢的问题,首先要删除冗余数据. 问题描述 数据库的表结构很简单,如下: 复制代码 代码如下: +----------------+--------------+
-
MySQL 删除数据库中重复数据方法小结
刚开始,根据我的想法,这个很简单嘛,上sql语句 delete from zqzrdp where tel in (select min(dpxx_id) from zqzrdp group by tel having count(tel)>1); 执行,报错!!~!~ 异常意为:你不能指定目标表的更新在FROM子句.傻了,MySQL 这样写,不行,让人郁闷. 难倒只能分步操作,蛋疼 以下是网友写的,同样是坑爹的代码,我机器上运行不了. 1. 查询需要删除的记录,会保留一条记录. select
-
Mysql删除重复数据保留最小的id 的解决方法
在网上查找删除重复数据保留id最小的数据,方法如下: DELETE FROM people WHERE peopleName IN ( SELECT peopleName FROM people GROUP BY peopleName HAVING count(peopleName) > 1 ) AND peopleId NOT IN ( SELECT min(peopleId) FROM people GROUP BY peopleName HAVING count(peopleName) >
-
mysql删除表中某一字段重复的记录
比如,表: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);
-
mysql查找删除重复数据并只保留一条实例详解
有这样一张表,表数据及结果如下: school_id school_name total_student test_takers 1239 Abraham Lincoln High School 55 50 1240 Abraham Lincoln High School 70 35 1241 Acalanes High School 120 89 1242 Academy Of The Canyons 30 30 1243 Agoura High School 89 40 1244 Agour
-
删除mysql数据库中的重复数据记录
采用的是下面的方法可删除,假设重复的是test数据库中的title字段 复制代码 代码如下: create table bak as (select * from test group by title having count(*)=1); insert into bak (select * from test group by title having count(*)>1); truncate table test; insert into te
-
Mysql删除重复的数据 Mysql数据去重复
MySQL数据库中查询重复数据 select * from employee group by emp_name having count (*)>1; Mysql 查询可以删除的重复数据 select t1.* from employee t1 where (t1.emp_name) in (select t4.emp_name from (select t2.emp_name from employee t2 group by t2.emp_name having count(*)>1)
-
MySQL数据库中删除重复记录的方法总结[推荐]
表结构: mysql> desc demo; +-------+------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------+------------------+------+-----+---------+----------------+ | id | int(11) unsigned | NO | PRI | NULL
-
mysql删除重复记录语句的方法
例如: id name value 1 a pp 2 a pp 3 b iii 4 b pp 5 b pp 6 c pp 7 c pp 8 c iii id是主键 要求得到这样的结果 id name value 1 a pp 3 b iii 4 b pp 6 c pp 8 c iii 方法1 delete YourTable where [id] not in ( select max([id]) from YourTable group by (name + value)) 方法2 delet
-
MySQL中查询、删除重复记录的方法大全
前言 本文主要给大家介绍了关于MySQL中查询.删除重复记录的方法,分享出来供大家参考学习,下面来看看详细的介绍: 查找所有重复标题的记录: select title,count(*) as count from user_table group by title having count>1; SELECT * FROM t_info a WHERE ((SELECT COUNT(*) FROM t_info WHERE Title = a.Title) > 1) ORDER BY Titl
随机推荐
- Python之eval()函数危险性浅析
- SQL Server中利用正则表达式替换字符串的方法
- SQL2005 学习笔记 窗口函数(OVER)
- 使用JQ完成表格隔行换色的简单实例
- JS制作图形验证码实现代码
- Spring MVC 4.1.3 + MyBatis零基础搭建Web开发框架(注解模式)
- 字符串反转_JavaScript
- 一行代码实现纯数据json对象的深度克隆实现思路
- php中数据库连接方式pdo和mysqli对比分析
- php mysql 留言本应用实例第1/2页
- Android开发之图形图像与动画(四)AnimationListener简介
- Yii实现MySQL多数据库和读写分离实例分析
- js加密解密字符串可自定义密码因子
- Shell脚本中实现切换用户并执行命令操作
- 基于jQuery实现一个marquee无缝滚动的插件
- win2003下 iis+php快速稳定的配置方法
- C语言中查询进程信号是否被遮罩或搁置的简单方法
- 实战无线局域网
- PHP实现的简单四则运算计算器功能示例
- PHP中OpenSSL加密问题整理