文档章节

mysql数据库重复记录过滤删除解决

p至尊宝
 p至尊宝
发布于 2016/07/12 14:59
字数 223
阅读 72
收藏 2

删除重复记录

#1、查询重复记录

SELECT id,COUNT(*) AS total,songurl  FROM HFMedia.HFSongs GROUP BY songurl HAVING total > 1  ORDER BY total DESC

 

#2、建立临时表
CREATE TEMPORARY TABLE  tbl_hfsongs( id INT(10) ,number INT(5), url VARCHAR(255) , KEY pk(id)  ) ENGINE=MEMORY;

#3、查数据插入临时表

INSERT INTO tbl_hfsongs  SELECT id,COUNT(*) AS total,songurl  FROM HFMedia.HFSongs GROUP BY songurl HAVING total > 1  ORDER BY total DESC  ;

 

#4、测试生产的sqls

SELECT CONCAT('delete from FROM HFMedia.HFSongs where songurl = \'',uniq,'\' and  id != ',id) FROM tbl_hfsongs  LIMIT 2;

#5、生成执行脚本、
SELECT CONCAT('delete from FROM HFMedia.HFSongs where songurl = \'',uniq,'\' and  id != ',id,';') INTO OUTFILE '/tmp/delect_sb.sql' FROM tbl_hfsongs ;

 

#6、执行脚本

mysql>source  /tmp/delect_sb.sql 

 

#7、测试清理重复数据后情况

SELECT id,COUNT(*) AS total,songurl  FROM HFMedia.HFSongs GROUP BY songurl HAVING total > 1  ORDER BY total DESC

 

#8,手动释放临时表

mysql>truncate tbl_hfsongs;

mysql>drop table tbl_hfsongs;

© 著作权归作者所有

共有 人打赏支持
p至尊宝
粉丝 2
博文 19
码字总数 7819
作品 0
深圳
后端工程师
加载中

评论(1)

p至尊宝
p至尊宝
分表联表查询
(SELECT * FROM HFLocations_2017_01_5 WHERE devicecode="PFDX13532110812385330000" ORDER BY id DESC )
UNION (SELECT * FROM HFLocations_2016_12_5 WHERE devicecode="PFDX13532110812385330000" ORDER BY id DESC ) LIMIT 10;

不重复插入;
INSERT INTO HFDevices (field1,field2) SELECT 'd1','d2' FROM DUAL WHERE NOT EXISTS ( SELECT 1 FROM HFDevices WHERE devicecode = 'dc';
MySQL专题10之MySQL序列使用、MySQL处理重复数据、MySQL以及SQL的注入

1、MySQL序列使用 - MySQL序列是一组整数:1,2,3...,由于一张数据表只能有一个字段自增主键,如果你想实现其他字段也实现自动增加,就可以使用MySQL序列来实现。 - 使用AUTOINCREMENT:MySQL...

极客微信条
2017/11/21
0
0
基于 PHP 的网站内容管理系统--五指CMS

五指CMS网站管理系统 五指cms网站管理系统,网站内容管理系统,php5+mysql开发。 服务器要求 Web服务器:apache/nginx/iis PHP环境要求:支持php5.2、php5.3、php5.4、php5.5、php5.6!(推荐...

wuzhicms
2015/05/20
8K
3
MySQL常见错误分析与解决方法总结

一、Can't connect to MySQL server on 'localhost' (10061) 翻译:不能连接到 localhost 上的mysql 分析:这说明“localhost”计算机是存在的,但在这台机器上却没提供MySQL服务。 需要启动...

zzc052
2017/11/16
0
0
mysql与oracle去重方案的异同,mysql处于学习阶段不太熟悉,最后有两个解决不了,求大神帮忙补充上

去重查询语句 oracle: select * from table1 a where rowid in (select max(rowid) from table1 b where a.id = b.id) mysql: select a.id,* from table1 a group by a.id 查询重复的语句 or......

混分小菜鸟
2015/03/20
270
2
MySQL基础教程

这是一个基础的MySQL教程,通过教程的学习后可以到达一个初级到中级 MySQL应用水平级别 ,主要介绍一些MySQL中基本的SQL语句。如果这是您第一次使用关系数据库管理系统(之前没有学习SQL相关...

易百教程
2016/10/11
37
0

没有更多内容

加载失败,请刷新页面

加载更多

你为什么在Redis里读到了本应过期的数据

一个事故的故事 晚上睡的正香突然被电话吵醒,对面是开发焦急的声音:我们的程序在访问redis的时候读到了本应过期的key导致整个业务逻辑出了问题,需要马上解决。 看到这里你可能会想:这是不...

IT--小哥
今天
2
0
祝大家节日快乐,阖家幸福! centos GnuTLS 漏洞

yum update -y gnutls 修复了GnuTLS 漏洞。更新到最新 gnutls.x86_64 0:2.12.23-22.el6 版本

yizhichao
昨天
3
0
Scrapy 1.5.0之选择器

构造选择器 Scrapy选择器是通过文本(Text)或 TextResponse 对象构造的 Selector 类的实例。 它根据输入类型自动选择最佳的解析规则(XML vs HTML): >>> from scrapy.selector import Sele...

Eappo_Geng
昨天
2
0
Windows下Git多账号配置,同一电脑多个ssh-key的管理

Windows下Git多账号配置,同一电脑多个ssh-key的管理   这一篇文章是对上一篇文章《Git-TortoiseGit完整配置流程》的拓展,所以需要对上一篇文章有所了解,当然直接往下看也可以,其中也有...

morpheusWB
昨天
3
0
中秋快乐!!!

HiBlock
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部