精华内容
下载资源
问答
  • MySQL 数据去重

    2016-06-30 13:37:31
    背景:数据库中存在除主键以外的重复数据。 原理:删除,自连接,查询分组,最大值。 执行SQL: DELETE a from user as a JOIN( SELECT name,count(*),MAX(id) as id from user GROUP BY name HAVING count(*)>1...

    背景:数据库中存在除主键以外的重复数据。

    原理:删除,自连接,查询分组,最大值。

    执行SQL:

    DELETE a from user as a JOIN(

    SELECT name,count(*),MAX(id) as id from user GROUP BY name HAVING count(*)>1

    ) as b on a.name = b.name where a.id = b.id;

    展开全文
  • 计算:sum 求和avg 平均值max 最大值min 最小值count 个数 不管什么引擎下,count(*)效率最高以上函数忽略null值2.distinct 去重sum(distinct id)先去重,再求和。3.group by 分组先分组,再统计SELECT money, ...

    分组函数,又称聚合函数,是将一类数据统计后获得一个值

    1. 计算:

    sum 求和

    avg 平均值

    max 最大值

    min 最小值

    count 个数    不管什么引擎下,count(*)效率最高

    以上函数忽略null值

    2.distinct 去重

    sum(distinct id)

    先去重,再求和。

    3.group by 分组

    先分组,再统计

    SELECT money, COUNT(*) FROM account GROUP BY money

    先按money的值分组,然后返回每组金额和这种金额的数目。

    group by后面也可以跟函数等

    可以多个字段: group by 字段1,字段2.  两个字段先后不影响结果。

    select 需要查询的字段 from 表名 where 条件 group by 分组字段 having groupby执行完之后的筛选条件 order by 排列用字段 (desc降序/asc升序)

    原文:https://www.cnblogs.com/clamp7724/p/11785659.html

    展开全文
  • 去除重复: DELETE FROM wei_daddy_recommend_copy WHERE id NOT IN (SELECT a.id FROM (SELECT MAX(id) FROM wei_daddy_recommend_copy GROUP BY NAME, sale_price HAVING...mysql不允许在查询数据上进行更新操作...

    去除重复:
    DELETE FROM wei_daddy_recommend_copy WHERE id NOT IN (SELECT a.id FROM (SELECT MAX(id) FROM wei_daddy_recommend_copy GROUP BY NAME, sale_price HAVING COUNT(*) >= 1) a);

    mysql不允许在查询的数据上进行更新操作,所以在select外面套一层查询

    参考:MySQL删除重复记录 https://blog.csdn.net/u010333070/article/details/54910923
    过滤、转换数据:
    select id, SUBSTRING_INDEX(sale_price,"-",1) as low_price, SUBSTRING_INDEX(sale_price,"-",-1) as high_price from wei_daddy_recommend_copy where id in (select id from wei_daddy_recommend_copy where sale_price like "%-%");
    创建表:
    create table temp (id int(11) NOT NULL,
            low_price varchar(24), 
            high_price varchar(24),
            primary key (id)
            )
    insert into temp select id, LTRIM(SUBSTRING_INDEX(sale_price,"-",1)) as low_price, RTRIM(SUBSTRING_INDEX(sale_price,"-",-1)) as high_price from wei_daddy_recommend_copy where id in (select id from wei_daddy_recommend_copy where sale_price like "%-%");
    更新表:
    update wei_daddy_recommend_copy a inner join (select id, low_price, high_price from temp) c on a.id = c.id set a.low_price = c.low_price, a.high_price = c.high_price;

    引用:mysql中update和select结合使用 https://blog.csdn.net/qq_36823916/article/details/79403696
    替换¥:
    update wei_daddy_recommend_copy set low_feight = REPLACE(low_feight,"¥","") where low_feight like "¥%";
    替换万:
    update wei_daddy_recommend_copy set amount = REPLACE(amount,"万","0000") where amount like "%万"

    展开全文
  • mysql多字段查询去重

    千次阅读 2018-07-20 14:49:15
    数据表有主键时,使用group by 获取相同字段的最大...SELECT MAX(r.id) from table r GROUP BY a,b,c,d ) 其中id为表table的主键,a,b,c,d为同时相同时去重的字段。 当数据表没有主键时,需要首先加上主键,使...

    当数据表有主键时,使用group by 获取相同字段的最大主键即可,code如下:

    SELECT rn.*
    FROM table_name rn
    WHERE rn.id  IN 
    (
    SELECT MAX(r.id) 
    from table r
    GROUP BY a,b,c,d
    )

    其中id为表table的主键,a,b,c,d为同时相同时去重的字段。
    当数据表没有主键时,需要首先加上主键,使用以下加上主键

    SELECT @row:=@row +1 AS id,h.*
    FROM table h,(SELECT @row:=0) AS it

    此时执行将产生一列新的值,为id,递增表示主键
    然后方法和第一段sql一致。

    SELECT rn.*
    FROM
    (
    SELECT @row:=@row +1 AS rownum,h.*
    FROM table h,(SELECT @row:=0) AS it
    )rn
    WHERE rn.rownum  IN 
    (
    SELECT MAX(r.rownum) 
    FROM(
    SELECT @row:=@row +1 AS rownum,h.*
    FROM table h,(SELECT @row:=0) AS it
    )r
    GROUP BY a,b,c,d
    )
    展开全文
  • 需求:对一张用户表根据...误区及解决方案:group by方法只能获取部分字段(去重指定字段),不能一次获取到完整的数据,但是可以通过max函数获取group by结果集中的id,再根据id集合查询出全部的记录。测试思路查询去...
  • 需求:对一张用户表根据...误区及解决方案:group by方法只能获取部分字段(去重指定字段),不能一次获取到完整的数据,但是可以通过max函数获取group by结果集中的id,再根据id集合查询出全部的记录。测试思路查询去...
  • Mysql一条sql语句实现数据去重操作

    千次阅读 2016-04-05 22:43:10
    原因:Mysql在执行修改或删除的时候,子查询不能是同一张表DELETE FROM users WHERE user_id NOT IN (SELECT temp.user_id FROM (SELECT MAX(user_id) user_id FROM users GROUP BY qzkh_mc, mphone, dhhm, add_prov...
  • 计算:sum 求和avg 平均值max 最大值min 最小值count 个数 不管什么引擎下,count(*)效率最高以上函数忽略null值2.distinct 去重sum(distinct id)先去重,再求和。3.group by 分组先分组,再统计SELECT money, ...
  • MySQL去除重复数据

    2018-06-21 18:20:00
    今天遇到一个需要对表进行去重的问题,数据量大概千万左右,第一选择就是按Oracle的思路上: delete from table t1 where id < (select max(id) from table t2 where t1.c1=t2.c1); --将c1值相同的记录进行...
  • 数据如下 想去重name值并且保留ID最大的记录 //查询 查看是否是需要删除的记录 SELECT * FROM test where id not in ( SELECT id from (SELECT MAX(id) id FROM test GROUP BY name) a ); //删除对应的记录 DELETE...
  • SQL中查询第N高的数据评分表ratings方法一:如果求第二高的数据,运用子查询步骤一:获取给定MovieId的所有ratingselect * from ratings where MovieId=1111;步骤二:运用distinct()进行去重selcet distinct Rating ...
  • 在web_hk_roadway数据表中根据ROADWAY_CODE查询ROADWAY_NAME得时候发现一个code查询出来了多条name,因此决定首先对数据表中ROADWAY_CODE和ROADWAY_NAME一致的数据进行去重处理,下面是去重成功的语句 DELETE FROM ...
  • **解决**由于进度问题, 用exists解决失败, 最后解决如下如果想找最新的数据,则需要使用group by和max。找出最新数据的id, 采用低效的 in 对查询的最新数据的id进行再次查询筛选.参见 ...
  • 分组查询group by 和having多字段分组查询having和where的选择总结一个完整的DQL语句关于查询结果集的去重 1>分组函数 count 计数 sum 求和 avg 平均值 max 最大值 min 最小值 记住:所有的分组函数都是对“某一...
  • 但是这不像mysql那样直接 max(学科) goup by 学科 直接找到最大. 我在网上找了好久也没有解决如何利用java代码分组查询 刚学MongoDB 对他也不是很了解 最后我决定自写一个 主要是利用map集合类 @Override //这是...
  • 由于进度问题, 用exists解决失败, 最后解决如下如果想找最新的数据,则需要使用group by和max。找出最新数据的id, 采用低效的 in 对查询的最新数据的id进行再次查询筛选.参见 ...
  • MySQL中,修改和删除数据是很重要的操作。最重要的是查询,包括查询所有列、去重、指定列,还可以重命名。条件查询包括比较运算符(>、<、>=、、=、!=)、逻辑运算符(and、or、not),模糊查询的关键字like、...
  • 入门MySQL语句(2)

    2018-05-30 11:47:38
    查询num行数:select count(num) from info; 查询num去重复后的行数:1.select instinct num from info; (给num去重)2.... (查询去重后num的行数)查找数据最大值和最小值:select max(字段名) as 字段名MAX...
  • 一、汇总函数函数含义count求某列的行数sum对某列数据求和avg求某列数据的平均值max求某列数据的最大值min求某列数据的最小值count(列名):求某列的行数(除去空值)count(*):求所有行数(包括空值)count(distinct ...
  • MySQL 高级使用

    2018-09-25 08:55:49
    DISTINCT 用于对查询的记录去重 分组函数: COUNT(*) 用于获取查询的记录总数 COUNT(DISTINCT xxx) 用于获取查询的记录中不重复内容的总数 MAX(xxx) 用于获取查询记录中的最大值 MIN(xxx) 用于获取查询记录中的...
  • mysql 常用的聚合函数

    2020-12-27 00:21:13
    sum() 数值求和 avg() 数值求平均数 count() 求数据数量 min() 最小值 max() 最大值 注意点 聚合函数会自动忽略值为 ...-- 查询人员表中关联的部门数, 去重结果 select count(distinct dept_id) from t_person; ...
  • mysql入门.md

    2020-06-11 15:31:59
    max、min、count可以处理任何数据类型 3、都可以搭配distinct使用,用于统计去重后的结果 4、count的参数可以支持: 字段、*、常量值,一般放1 建议使用 count(*) ``` ### 进阶5:分组查询
  • mysql 心法口诀复习

    2020-05-22 23:42:09
    开始打鸡血了 语法顺序 select distinct 字段1,字段1,字段3 from 库....where 条件 group by 分组条件 having 过滤 ...限制查询数据条数(limit) group by 使用的聚合函数 max() 最大 min()
  • 多表查询连接 左连接 : 保留左表中全部数据 右连接:保留右表中全部数据 中间连接:保留两表中公共数据 其余的可看下图: (ps:一定要明确保留哪一部分数据) ...查询结果 跳过y条数据 读取前x条数据 group
  • Mysql常用操作总结

    2019-09-27 08:44:02
    1.创建(插入) CREATE(属性名,数据类型,约束) INSERT INTO 表(类型名)VALUES (值) ...SELECT 属性(函数) DISTINCT去重,COUNT():计数,MAX(),MIN(),AVG(),SUM() …AS– FROM 表 WHERE 条件 AND,OR...
  • MySQL学习笔记基础篇

    2020-01-05 01:32:08
    用于对一组数据进行运算,也叫聚合函数或统计函数 sum:求和 avg: 平均数 max min count:计算非空字段值的个数 count补充作用 select count(*) from employees 查询employees 表中的行数,*可以换成任意字符。 ...
  • 1.sum,avg一般用于处理数值型数据max,min,count可以处理任何数据类型 2.以上分组函数都忽略null值 3.可以和distinct搭配实现去重运算 4.count 函数单独介绍 5.和分组函数一同查询的字段要求是group by后的字段 ...
  • 1+X第三天

    2020-11-11 10:57:29
    MySQL数据处理 1.添加数据 例: 2.更新语句 3.删除语句 4.基本查询 5.聚合函数 sum:对数值型求和 avg:对数值求平均值 max:求最大值 min:求最小值 count:计数(跟列名没有任何列没有关系,可以写成:count...
  • spring-security-oauth2的mysql数据表 spring-security-oauth2代码实现 OAuth 2.0 详解 Hibernate动态查询 ES 实战 ElasticSearch 笔记 基础 1 Elasticsearch 概述 基础 2 Elasticsearch的功能、适用...

空空如也

空空如也

1 2
收藏数 30
精华内容 12
关键字:

maxmysql查询去重数据

mysql 订阅