mysql 去重_mysql 去重留一
首先先分析一下 我们现在的目的 是 查询到这俩张表的所有数据 然后进行删除重复记录 每条数据只保留一条
第一步:
查询以下俩张表的重复记录 (关键字段重复>1)
ks_examcity 、 ks_examdistrict
select * from ks_examcity group by examSubjectID,city,province having count(examSubjectID)>1;
select * from ks_examdistrict group by examSubjectID,district,city having count(examSubjectID)>1;
第二步:
查询这两张表中 每条记录的第一条记录 (每条记录重复中的第一条 id最小)
select min(id)
from ks_examcity
group by examSubjectID, city, province
having count(examSubjectID)> 1
SELECT min(id)
FROM `ks_examdistrict`
GROUP BY `examSubjectID`, `district`, `city`
HAVING COUNT(`examSubjectID`)> 1
第三步:
联查: 查询所有的重复数据以及重复记录中第一条以外的数据
select `examSubjectID`
from ks_examcity
group by examSubjectID, city, province
having count(examSubjectID)> 1 )
and id not in(
select min(id)
from ks_examcity
group by examSubjectID, city, province
having count(examSubjectID)> 1
SELECT `examSubjectID`
from `ks_examdistrict`
group by `examSubjectID`, `district`, `city`
HAVING COUNT(`examSubjectID`)> 1)
and id not in(
SELECT min(id)
FROM `ks_examdistrict`
GROUP BY `examSubjectID`, `district`, `city`
HAVING COUNT(`examSubjectID`)> 1
第四步: 查询以上查询到的数据的所有id 并以查询到的id作为条件 进行删除
delete from `ks_examcity` where id IN( select id from (
select id
from ks_examcity
where `examSubjectID` in(
select `examSubjectID`
from ks_examcity
group by examSubjectID, city, province
having count(examSubjectID)> 1 )
and id not in(
select min(id)
from ks_examcity
group by examSubjectID, city, province
having count(examSubjectID)> 1)) as tmpresult)
======================================================
DELETE
FROM `ks_examdistrict`
where id IN(
SELECT id
from(
select id
from `ks_examdistrict`
where `examSubjectID` in(
SELECT `examSubjectID`
from `ks_examdistrict`
group by `examSubjectID`, `district`, `city`
HAVING COUNT(`examSubjectID`)> 1)
and id not in(
SELECT min(id)
FROM `ks_examdistrict`
GROUP BY `examSubjectID`, `district`, `city`
HAVING COUNT(`examSubjectID`)> 1)) as tmpresult)
mysql 去重_mysql 去重留一相关推荐
- php mysql 去重_mysql去重的两种方法实例详解
这篇文章主要介绍了mysql去重的两种方法详解及实例代码的相关资料,这里对去重的两种方法进行了一一实例详解,需要的朋友可以参考下 mysql去重 方法一: 在使用MySQL时,有时需要查询出某个字段不 ...
- mysql命令去重_mysql去重的两种方法详解及实例代码
mysql去重 方法一: 在使用MySQL时,有时需要查询出某个字段不重复的记录,虽然mysql提供 有distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数, ...
- mysql命令去重_MySQL去重的方法整理
{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...
- mysql命令去重_mysql去重
{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...
- mysql如何根据搜索结果去重_mysql去重数据
今天一个同学问我mysql去除重复数据,自己做了个测试顺便记录下: 查看表结构: mysql> desc testdelete; +-------+-------------+------+-- ...
- php mysql去重_mysql 去重
https://blog.csdn.net/eagle89/article/details/90901755 假设有一个表user,字段分别有id–nick_name–password–email–p ...
- 千万数据去重_mysql去重,3亿多数据量
差不多3亿6千万数据,需要去重.因为数据量太大,所以: 将数据load data infile到大表里,不进行任何去重操作,没有任何约束.然后将数据分成几十个小表,用这几十个小表去对比大表去重.得到去 ...
- mysql降序后去重_Mysql 数据记录去重后按字段排序
实现效果:去重-取最新的-排序 例子 : 按用户ID获取历史记录中某个人的记录,要求非重复的且每条只获取最新的,同时按添加时间倒序排列的 实现 :SELECT * FROM ( SELECT * FR ...
- java steam 去重_Java中对List去重 Stream去重的解决方法
问题 当下互联网技术成熟,越来越多的趋向去中心化.分布式.流计算,使得很多以前在数据库侧做的事情放到了Java端.今天有人问道,如果数据库字段没有索引,那么应该如何根据该字段去重?大家都一致认为用Ja ...
最新文章
- [VsCode] 开发所使用的VsCode的插件
- 【C语言简单说】十八:二维数组
- P4841,jzoj3303-城市规划【NTT,多项式求逆,dp】
- 记录一个JS异常Uncaught NotFoundError
- 宅在家里写数据库中排序和分页
- 创建多个设备文件节点_使用DEVICE_ATTR实例分析
- 状态空间方程MATLAB语句
- OpManager引领智能运维未来的发展方向
- 解决cmd命令行乱码问题
- Dnsmasq+ipset+iptables基于域名的流量管理
- Php微云解析,更新微云网盘解析规则
- 简单五子棋游戏c语言简单,C语言制作简单五子棋游戏
- SQL48 将所有获取奖金的员工当前的薪水增加10%
- FFmpeg的HEVC解码器源代码简单分析:概述
- 对软件项目外包的一些认识
- HTML语言教程(完整版)
- UE4源码阅读_骨骼模型与动画系统_Mesh
- 宝鸡计算机软件的工作,宝鸡学计算机软件编程
- 2021-10-26 数据存储的基本原理
- Oracle数据库监听启动报错
热门文章
- 1.7 元注解作用及使用
- MySQL带比较运算符的子查询
- SpringBoot注解最全详解(整合超详细版本)
- 算法每日学打卡:java语言基础题目打卡(16-18)
- 【IntelliJ IDEA系列】IDEA编译方式介绍及编译器的设置和选择
- java学习曲线建议
- Spring Boot实现监控linux-cpu和内存使用情况,并发送邮件
- angular项目如何分层
- Oracle PCTfree assm,Oracle 段空间管理方式与PCTFREE和PCTUSED的概念
- vs中列表分页符代码_电脑办公技巧Excel中Ctrl+K的使用技巧(十二)/Word2016中快速删除分页符与空白页的方法...