精华内容
下载资源
问答
  • mysql去重

    2020-09-02 00:45:47
    MySQL 去重并且保留id 最大的值 SELECT * FROM cc WHERE id IN(SELECT MAX(id) FROM cc GROUP BY name)

    MySQL 去重并且保留id 最大的值
    在这里插入图片描述
    SELECT * FROM cc WHERE id IN(SELECT MAX(id) FROM cc GROUP BY name)

    展开全文
  • Mysql 去重

    2020-05-19 20:02:35
    Mysql 去重 delete p2 from person p2 where p2.person_id in (select a.person_id from (select p.person_id from person p where p.person_name in (select per.person_name

    Mysql 去重

    创建表

    create table person(
        person_id int primary key auto_increment,
        person_name varchar(32)
    )engine =InnoDB default charset utf8;
    

    插入数据

    insert into person (person_name) values ('jack');
    insert into person (person_name) values ('jack');
    insert into person (person_name) values ('jack');
    insert into person (person_name) values ('mike');
    insert into person (person_name) values ('tom');
    insert into person (person_name) values ('jim');
    

    在这里插入图片描述

    现在想使数据库中的数据没有重复记录

    执行以下sql语句

    delete p2
    from person p2
    where p2.person_id in (select a.person_id
                           from (select p.person_id
                                 from person p
                                 where p.person_name in (select per.person_name
                                                         from person per
                                                         group by per.person_name
                                                         having count(per.person_name) > 1)
                                   and p.person_id not in (select min(per.person_id)
                                                           from person per
                                                           group by per.person_name
                                                           having count(per.person_name) > 1)) a);
    

    获得结果

    在这里插入图片描述

    展开全文
  • MYsql去重

    2018-03-27 09:06:03
    mysql去重案例,group_concat函数的用法 摘要: mysql 去重案例: select group_concat(distinct user_id), `tenant_id` ,  `create_time`  from `dtops_db_list` where `create_time` ...

    mysql去重案例,group_concat函数的用法

    摘要: mysql 去重案例: select group_concat(distinct user_id), `tenant_id` ,  `create_time`  from `dtops_db_list` where `create_time`  >=’2016-07-22 00:00:00’ an

    mysql 去重案例:
    select group_concat(distinct user_id), `tenant_id` ,  `create_time`  from `dtops_db_list` where `create_time`  >=’2016-07-22 00:00:00’ and `create_time` <=’2016-07-28 23:59:59’  group by `tenant_id` 

    1.建表语句
    wjj@>create table dtstack(
        -> user_id int,
        -> user_name varchar(200) not null default ”)engine=innodb default charset=utf8;
    Query OK, 0 rows affected (0.05 sec)

    2.插入测试数据:
    wjj@>insert into dtstack values(2016,’wjj1’),(2016,’wjj2’),(2017,’wjj3’);
    Query OK, 3 rows affected (0.02 sec)
    Records: 3  Duplicates: 0  Warnings: 0

    3.现在需要对user_id字段去重:
    wjj@>select distinct user_id,user_name from dtstack order by user_id limit 0,3;
    +———+———–+
    | user_id | user_name |
    +———+———–+
    |    2016 | wjj1      |
    |    2016 | wjj2      |
    |    2017 | wjj3      |
    +———+———–+
    3 rows in set (0.00 sec
    上面的返回记录是对user_id,user_name一起去重,不是单个字段去重。

    4.mysql中引入了group_concat函数,可以与group by 一起使用实现单个字段去重:
    wjj]>select group_concat(distinct user_id),user_name from dtstack group by user_id order by user_id limit 0,3;
    +——————————–+———–+
    | group_concat(distinct user_id) | user_name |
    +——————————–+———–+
    | 2016                           | wjj1      |
    | 2017                           | wjj3      |
    +——————————–+———–+
    2 rows in set (0.00 sec)


    解释:group_concat函数:是将相同的行组合起来
    完整的语法如下:group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator ‘分隔符’])
            </div>
    
    展开全文
  • MySql去重

    2019-07-19 10:46:54
    MySql去重需求:去重添加主键 需求:去重 在数据库中存在重复的多条数据,需要删除多余的数据,只保留其中一条 添加主键 如果在原始数据没有自动增长的主键,则添加一个主键 id: 1.设定一个变量并赋值 set @a...

    需求:根据单列去重

    在数据库中存在重复的多条数据,需要删除多余的数据,只保留其中一条,以下是表结构
    在这里插入图片描述
    先查询重复数据

    select * from xiciip group by ip having count(ip) >1;
    

    结果如下:
    在这里插入图片描述

    添加主键

    如果在原始数据没有自动增长的主键,则添加一个主键id

    set @a:=0;
    update xiciip set id=(@a:=@a:+1);  #xiciip 为表名
    

    保留id最小的那一条数据

    直接删除选择的结果会报错,意思是不能在一条语句中对同一个表即进行select,又进行delete操作在这里插入图片描述

    建临时表

    把查询出来的结果放到临时表tmp1 tmp2中进行封装,再删除,代码如下:

    DELETE 
    FROM xiciip 
    WHERE ip IN
    (SELECT ip FROM
      (SELECT ip FROM xiciip 
      GROUP BY ip 
      HAVING COUNT(ip)>1)  tmp1)
    AND id NOT IN
    (SELECT * FROM
       (SELECT MIN(id) FROM xiciip
       GROUP BY ip
       HAVING COUNT(ip) > 1)  tmp2);
    

    运行结果如下:
    在这里插入图片描述
    在查询原表xiciip,查询不到重复的数据,去重成功。
    在这里插入图片描述

    展开全文
  • MySQl去重

    2019-11-08 11:34:20
    Mysql分组函数去重以及子查询 分组查询: select 的列表要以下条件 1. group by列表中字段 2. 或者分组函数任意字段 select a.FOpenID,count(distinct a.GOpenID) from HYDJGXB a where FOpenID in ( select ...
  • mysql 去重

    2019-09-18 14:31:19
    mysql 里面提供了DISTINCT关键字,DISTINCT关键字用查询的开头,DISTINCT可以根据他后面的字段进行去重 SELECT name,password FROM `user`; 查询全部的结果是 SELECT DISTINCT name FROM `user`; 单个...
  • 这篇文章主要介绍了mysql去重的两种方法详解及实例代码的相关资料,这里对去重的两种方法进行了一一实例详解,需要的朋友可以参考下mysql去重方法一:在使用MySQL时,有时需要查询出某个字段不重复的记录,虽然mysql...
  • MySQL去重

    2018-11-25 21:47:47
    distinct简单来说就是用来去重的,而group by的设计目的则是用来聚合统计的,两者在能够实现的功能上有些相同之处,但应该仔细区分,因为用错场景的话,效率相差可以倍计。 单纯的去重操作使用distinct,速度是快于...
  • Mysql去重

    2019-04-23 00:33:22
    set SQL_SAFE_UPDATES = 1; delete from moose.company_company where name in (select name from (select name from moose.company_company group by name having count(name)>1) as tmp1) ...
  • MYSQL去重

    2018-08-31 11:37:00
    DELETE tb_movie_detail_olFROMtb_movie_detail_ol,(SELECTmin(id) id,movie_idFROMtb_movie_detail_olGROUP BYmovie_idHAVINGcount(*) > 1) t2WHEREtb_movie_detail_ol.movie_id = t...
  • MySql 去重

    2018-04-19 22:08:00
    2019独角兽企业重金招聘Python工程师标准>>> ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,668
精华内容 1,467
关键字:

mysql去重

mysql 订阅