zoukankan      html  css  js  c++  java
  • SQL去重复数据

    1、查找表中重复数据,重复数据以单个字段(title)为标识

    select id,title from t_article 
    where title in (
      select title from (
        select title as title from t_article 
        group by title having count(title) > 1
      ) as title
    )
    order by title

    2、删除表中多余的重复数据,重复数据以单个字段(title)为标识,只留有id最小的数据

    delete from t_article 
    where title in (
      select title from (
        select title as title from t_article 
        group by title having count(title) > 1
      ) as title
    )
    and id not in (
      select id from (
        select min(id) as id from t_article t group by title having count(title) > 1
      ) as id
    );

    3、查找表中重复数据,重复数据以(title,source)多个字段为标识

    select id,title,source,upload_time from t_article 
    where (title,source) in (
      select title,source from t_article 
      group by title,source having count(*) > 1
    )
    order by title

    4、删除表中多余的重复数据,重复数据以(title,source)多个字段为标识,只留有id最小的数据

    delete from t_article 
    where id in (
        select id from (
            select id from t_article 
            where (title,source) in (
                select title,source from t_article 
                group by title,source having count(*) > 1
            )
            and id not in (
                select id from (
                    select min(id) as id from t_article 
                    group by title,source having count(*) > 1
                ) as id
            )
        )as id    
    ) 
  • 相关阅读:
    centos 研究
    python学习6 web开发
    python学习5 常用三方模块
    python学习4 常用内置模块
    python学习 3笔记
    SQLite
    mysql
    python学习 2数学公式
    python学习 1基础
    shell example02
  • 原文地址:https://www.cnblogs.com/mjtabu/p/14277859.html
Copyright © 2011-2022 走看看