Mysql快速删除表中重复的数据
表结构
CREATE TABLE T_VENDOR (
ID BIGINT(12) NOT NULL AUTO_INCREMENT COMMENT 'ID',
COUNTRY CHAR(2) DEFAULT NULL COMMENT '国家',
VENDOR VARCHAR(20) DEFAULT NULL COMMENT '客户',
CAT_ID BIGINT(12) DEFAULT NULL COMMENT '分类ID',
APP_ID BIGINT(12) DEFAULT NULL COMMENT 'APPID',
ORDBY BIGINT(12) DEFAULT NULL COMMENT '分类排序(在具体分类下的顺序)',
STATE CHAR(2) DEFAULT NULL COMMENT '分类状态(01 启用, 00禁用)',
CREATE_TIME DATETIME DEFAULT NULL COMMENT '创建日期',
UPDATE_TIME DATETIME DEFAULT NULL COMMENT '修改时间',
PRIMARY KEY (ID),
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;
实现目标
删除同一个国家、客户和分类下的重复APP,保留ID最小的记录
处理思路
Mysql不能把当前表的查询作为当前表的修改条件,故做一个二级子查询
删除脚本
DELETE FROM T_VENDOR WHERE ID NOT IN (SELECT MINID FROM (SELECT MIN(ID) AS MINID FROM T_VENDOR GROUP BY COUNTRY,VENDOR,CAT_ID,APP_ID) B);
Mysql快速删除表中重复的数据的更多相关文章
- MySQL 数据库删除表中重复数据
采集数据的时候,由于先期对页面结构的分析不完善,导致采漏了一部分数据.完善代码之后重新运行 Scrapy,又采集了一些重复的数据,搜了下删除重复数据的方法. N.B. 删除数据表的重复数据时,请先备份 ...
- MSSQL sql server 2005/2008 row_number()函数应用之–删除表中重复记录,只保留一条不重复数据
转自:http://www.maomao365.com/?p=4942 下文主要讲述:重复数据只获取一条的方法 row_number函数在数据库中的功能是为每一行 按照一定的规则生成一个编号,我们常常 ...
- ROWID面试题-删除表中重复数据(重复数据保留一个)
/* ROWID是行ID,通过它一定可以定位到r任意一行的数据记录 ROWID DNAME DEPTNO LOC ------------------ ------------------------ ...
- sqlite 删除表中重复数据(亲测可用)
例子:表名 Paper .通过字段PaperID查找重复数据. 1 --查询某表中重复的数据 select * from Paper group by PaperID having co ...
- C#中去掉表中重复的数据
/// <summary> /// 去掉表中重复的数据 int /// </summary> /// <param name="SourceTable&quo ...
- 查询和删除表中重复数据sql语句
1.查询表中重复数据.select * from peoplewhere peopleId in (select peopleId from people group by ...
- mysql mariadb 删除表中的数据时数据库变大
删除表中数据以前 [root@RM uar3]# du -sh * 3.3G apache-tomcat-7.0.54 150M instalRM4UAR 0 mariadb 903M mariadb ...
- orcl 如何快速删除表中百万或千万数据
orcl 数据库表中数据达到上千万时,已经变的特别慢了,所以时不时需要清掉一部分数据. bqh8表中目前有10000000条数据,需要保留19条数据,其余全部清除掉. 以下为个人方法: 1.首先把需要 ...
- SqlServer删除表中重复记录
重复记录:有两个意义上的重复记录 一是完全重复的记录,也即所有字段均重复的记录: 二是部分关键字段重复的记录,比如Name字段重复,而其他字段不一定重复或都重复可以忽略. 1.对于第一种重复,比较容易 ...
随机推荐
- C++的默认构造函数与构造函数
今天看书,忽然发现自己对默认构造函数/构造函数的理解很模糊,在实际项目中写类时,这些细节问题并没有涉及到.因此,就专门对着<C++ Primer Plus>将默认构造函数/构造函数这一块简 ...
- android技巧(五)一个异步+接口回调的例子
public class DataBaseUtils { // 当前数据库地址 private String DB_PATH; // 备份后数据库保存地址 private String DB_BACK ...
- iOS的触摸事件的用法以及和手势识别器的区别
1.首先来介绍下触摸事件和手势识别器的利与弊 触摸事件和手势识别器二者之间有直接的关系 手势识别器是在触摸事件的基础上演变过来的 当我们用到触摸事件时 默认的uiview是没有什么效果的 只能自定义v ...
- Extjs,Git,插件....学习网址
详细的extjs讲解http://wenku.baidu.com/view/e98a781352d380eb62946de4.html 博客 http://www.cnblogs.com/iamlil ...
- ASP.NET Repeater 控件分页
protected void Page_Load(object sender, EventArgs e) { HttpContext context = HttpContext.Current; co ...
- php性能优化实用技巧:
以下是五个优化技巧,熟练掌握后对于开发还是很有帮助的. 1. 对字符串使用单引号 PHP 引擎允许使用单引号和双引号来封装字符串变量,但是这个是有很大的差别的!使用双引号的字符串告诉 PHP 引擎首先 ...
- LayaAir引擎——(九)
var h = new Array(); var j = new Array(); var xbCursor = 0; function xbinit() { xbinitName(); xbRect ...
- iOS给UIimage添加圆角的两种方式
众所周知,给图片添加圆角有CALayer的cornerRadius, 比如: 最直接的方法: imgView.layer.cornerRadius1=110; imgView.clipsToBou ...
- Android 学习第14课,Android 布局
布局分4种: 1. LinearLayout (线性布局) file:///H:/tool/01/Android/android-sdk-windows/docs/guide/topics/ui/la ...
- win10 用cmake 3.5.2 和 vs 2015 update1 编译 GPU版本(cuda 8.0, cudnn v5 for cuda 8.0)
win10 用cmake 3.5.2 和 vs 2015 update1 编译 GPU版本(cuda 8.0, cudnn v5 for cuda 8.0) 用vs 2015打开 编译Release ...