Mysql快速删除表中重复的数据
2017-01-05 21:52
239 查看
表结构
实现目标
删除同一个国家、客户和分类下的重复APP,保留ID最小的记录
处理思路
Mysql不能把当前表的查询作为当前表的修改条件,故做一个二级子查询
删除脚本
1 CREATE TABLE T_VENDOR ( 2 ID BIGINT(12) NOT NULL AUTO_INCREMENT COMMENT 'ID', 3 COUNTRY CHAR(2) DEFAULT NULL COMMENT '国家', 4 VENDOR VARCHAR(20) DEFAULT NULL COMMENT '客户', 5 CAT_ID BIGINT(12) DEFAULT NULL COMMENT '分类ID', 6 APP_ID BIGINT(12) DEFAULT NULL COMMENT 'APPID', 7 ORDBY BIGINT(12) DEFAULT NULL COMMENT '分类排序(在具体分类下的顺序)', 8 STATE CHAR(2) DEFAULT NULL COMMENT '分类状态(01 启用, 00禁用)', 9 CREATE_TIME DATETIME DEFAULT NULL COMMENT '创建日期', 10 UPDATE_TIME DATETIME DEFAULT NULL COMMENT '修改时间', 11 PRIMARY KEY (ID), 12 ) 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中快速高效删除大数据表中的重复数据
- oracle 快速删除大批量数据方法(全部删除,条件删除,删除大量重复记录)
- mysql删除重复数据
- oracle 快速删除大批量数据方法(全部删除,条件删除,删除大量重复记录)
- mysql学习总结一当数据不存在的时候插入,存在的时候进行更新,删除重复数据
- MySQL语句删除数据库重复记录数据行
- mysql删除重复数据
- Mysql大数据表删除重复数据
- mysql 删除重复数据
- mysql删除重复数据
- mysql 中删除重复数据
- mysql 删除表中重复数据的一种方法
- mysql 删除重复数据(多个字段重复)
- mysql 删除重复数据
- mysql删除数据库的重复数据
- mysql中 删除重复数据
- mysql之删除重复数据
- oracle 快速删除大批量数据方法(全部删除,条件删除,删除大量重复记录) 转
- 删除Mysql数据表中多余的重复记录的sql语句