MySQL 8 清理重复数据

Posted 在奋斗的大道

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL 8 清理重复数据相关的知识,希望对你有一定的参考价值。

昨天晚上,公司项目进行版本升级从2.0 升级3.0 版本,技术架构也由SpringBoot2.x +Dubbo 升级为Spring Cloud Alibaba + Nacos + Fegin 模式。同时也意味着数据也要进行数转。

今天刚刚到公司,就收到测试部门的反馈,昨天迁移数转的项目数据存在重复的情况,需要我立即处理。

SQL整齐:

base_project 表:通过tid \\ptid\\project_no 三个字段可以确定唯一记录。

delete from base_project where id not in(
    select temp.minid from (
        select min(bp.id) as minid from base_project bp group by bp.tid, bp.ptid,bp.project_no having(count(1)) > 1
    )
)

功能描述:

  • 基于tid \\ptid\\project_no 字段进行分组,统计记录数大于1,满足条件的记录取id 最小值。

  • 使用临时表包裹刚刚查询的记录Id

  • base_project 删除ID不在临时表中的记录。

以上是关于MySQL 8 清理重复数据的主要内容,如果未能解决你的问题,请参考以下文章

我对 Java 中的准备好的语句有问题 - Mysql 8.0 [重复]

无法使用 JDBC 和 Spring 连接到 MySQL [重复]

阅读 Robin Nixon 的学习 PHP、MySQL 和 JavaScript 时提出的问题 RE:清理输入 PHP [重复]

Spring事务失效的 8 大原因

如何通过删除基于 8 列中的 2 列的重复项来清理 BigQuery 表?

Oracle自带adrci工具清理告警日志