• MYSQL 当有两条重复数据时 保留一条


    delete from test  where id in (select id from (select  max(id) as id,count(text) as count from test group by text having count >1 order by count desc) as tab )


    测试代码


     INSERT IGNORE INTO test_1(text,text2) values ('1111','22222');
     INSERT IGNORE INTO test_1(text,text2) values ('1111','22222');
     INSERT IGNORE INTO test_1(text,text2) values ('1111','22222');
     INSERT IGNORE INTO test_1(text,text2) values ('1111','22222');
     INSERT IGNORE INTO test_1(text,text2) values ('1111','22222');
     INSERT IGNORE INTO test_1(text,text2) values ('1111','33333');
     INSERT IGNORE INTO test_1(text,text2) values ('1111','33333');
     INSERT IGNORE INTO test_1(text,text2) values ('1111','33333');
     INSERT IGNORE INTO test_1(text,text2) values ('1111','33333');
     INSERT IGNORE INTO test_1(text,text2) values ('1111','33333');
     INSERT IGNORE INTO test_1(text,text2) values ('1111','33333');
     INSERT IGNORE INTO test_1(text,text2) values ('1111','33333');

     INSERT IGNORE INTO test_1(text,text2) values ('22222','33333');
     INSERT IGNORE INTO test_1(text,text2) values ('22222','33333');
     INSERT IGNORE INTO test_1(text,text2) values ('22222','33333');
     INSERT IGNORE INTO test_1(text,text2) values ('22222','33333');
     INSERT IGNORE INTO test_1(text,text2) values ('22222','33333');
     INSERT IGNORE INTO test_1(text,text2) values ('22222','33333');


     REPLACE  INTO test(text) values ('1111')

    delete from test

    select * from test_1 where text='1111'
    select * from test_1 where text='22222'

    while 
    delete from test_1  where id in (select id from (select  max(id) as id,count(text) as count from test_1 where text = '22222' group by text,text2 having count >1 order by count desc) as tab );

    delete from test_1  where id in (select id from (select  max(id) as id,count(text) as count from test_1 where text = '22222' group by text,text2 having count >1 order by count desc) as tab );
    delete from test_1  where id in (select id from (select  max(id) as id,count(text) as count from test_1 where text = '22222' group by text,text2 having count >1 order by count desc) as tab );
    delete from test_1  where id in (select id from (select  max(id) as id,count(text) as count from test_1 where text = '22222' group by text,text2 having count >1 order by count desc) as tab );
    delete from test_1  where id in (select id from (select  max(id) as id,count(text) as count from test_1 where text = '22222' group by text,text2 having count >1 order by count desc) as tab );
    delete from test_1  where id in (select id from (select  max(id) as id,count(text) as count from test_1 where text = '22222' group by text,text2 having count >1 order by count desc) as tab );
    delete from test_1  where id in (select id from (select  max(id) as id,count(text) as count from test_1 where text = '22222' group by text,text2 having count >1 order by count desc) as tab );
    delete from test_1  where id in (select id from (select  max(id) as id,count(text) as count from test_1 where text = '22222' group by text,text2 having count >1 order by count desc) as tab );





  • 相关阅读:
    C++ 编译、调试错误总结
    git submodule 使用
    SGI STL双端队列deque
    前端监控系统备忘
    webpack原理系列
    Fiddler+proxifier解决抓取不到客户端接口的问题
    AutoFac中常用方法说明
    SQL查询表结构
    linux安装consul集群
    Sqlserver查看所有表数据行数,查找包含xxx字符串的SP
  • 原文地址:https://www.cnblogs.com/yilongm/p/4742875.html
Copyright © 2020-2023  润新知