广告
返回顶部
首页 > 资讯 > 数据库 >数据库之MySQL查询去重数据
  • 936
分享到

数据库之MySQL查询去重数据

数据库 2023-09-03 14:09:39 936人浏览 八月长安
摘要

最近遇到了一个问题,当时我的第一反应是导出来,用wps的excel表格的删除重复项的功能,简单粗暴又直接,但是没有考虑到数据量太大的情况,会导致Excel打开缓慢。这个时候就考虑有没有更方便快捷的方法,网上也查询了很多方法,但是实践出真知,

最近遇到了一个问题,当时我的第一反应是导出来,用wps的excel表格的删除重复项的功能,简单粗暴又直接,但是没有考虑到数据量太大的情况,会导致Excel打开缓慢。这个时候就考虑有没有更方便快捷的方法,网上也查询了很多方法,但是实践出真知,还是要实践之后才能得到真相。 

 

 开始实践:

先创建一个拥有重复数据的表。

 方法一:使用DISTINCT过滤重复数据

直接查询age字段,会输出所有数据,包含重复项。

 DISTINCT 关键字指示 Mysql 消除重复的记录值

SELECT DISTINCT <字段名> FROM <表名>;

 可以看到消除了重复项,使用distinct可行。

使用 DISTINCT 关键字时需要注意以下几点:

DISTINCT 关键字只能在 SELECT 语句中使用。

在对一个或多个字段去重时,DISTINCT 关键字必须在所有字段的最前面。

如果 DISTINCT 关键字后有多个字段,则会对多个字段进行组合去重,也就是说,只有多个字段组合起来完全是一样的情况下才会被去重。

方法二:group by

GROUP BY 语句根据一个或多个列对结果集进行分组。在分组的列上我们可以使用 COUNT, SUM, AVG,等函数。

select 重复的字段名 from 表名  group by 重复的字段名;

group by 对age查询结果进行了分组,自动将重复的项归结为一组。

 还可以使用count函数,统计重复的数据有多少个。

方法三: row_number窗口函数

oracle数据库中可以方便的使用row_number函数,实现分组取组内特定数据的功能。但是mysql中并没有引入类似的函数。为了实现这一功能,需要一些特别的处理。

row_number() over (partition by <用于分组的字段名> order by <用于组内排序的字段名>)

select * from (select t.*,row_number() over(partition by t.children_id  order by t.update_time DESC) rn       
from mdm_data_authority_view_info t where t.DATA_CLASS_ID = '分类id' AND t.DATA_ROLE_ID 
IN ( '角色id', '角色id' ))              
where rn = 1;  
 

 

来源地址:https://blog.csdn.net/qq_32393893/article/details/126850270

您可能感兴趣的文档:

--结束END--

本文标题: 数据库之MySQL查询去重数据

本文链接: https://www.lsjlt.com/news/392301.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 数据库之MySQL查询去重数据
    最近遇到了一个问题,当时我的第一反应是导出来,用wps的Excel表格的删除重复项的功能,简单粗暴又直接,但是没有考虑到数据量太大的情况,会导致Excel打开缓慢。这个时候就考虑有没有更方便快捷的方法,网上也查询了很多方法,但是实践出真知,...
    99+
    2023-09-03
    数据库
  • mysql去重查询表中数据
    1、distinct select count(distinct CName) from teble select count(CName) from (select dist...
    99+
    2022-10-18
  • MySQL数据库学习之去重与连接查询详解
    目录1.去重2.连接查询使用where进行多表连接查询内连接 - 等值连接内连接 - 非等值连接内连接 - 自连接外连接 - 左右外连接三表连接1.去重 示例表内容参考此文章 有些 mysql 数据表中可能存在...
    99+
    2022-07-24
    MySQL去重 MySQL连接查询 MySQL去重连接查询
  • Node.js数据库操作之查询MySQL数据库(二)
    前言 我们在上一篇文章《Node.js数据库操作之连接MySQL数据库(一)》中已经学习了Nodejs连接MySQL数据库的几种方法,数据库连接上了之后就需要对数据库进行查询。本篇文章介绍一下查询MySQL...
    99+
    2022-06-04
    数据库 操作 Node
  • MySQL数据库查询之多表查询总结
    目录多表关系表与表之间的联系:一对多(多对一)多对多一对一多表查询多表查询的分类1.连接查询:2.子查询内连接外连接自连接联合查询子查询标量子查询列子查询行子查询表子查询多表查询案例...
    99+
    2022-11-13
    mysql多表查询语句 mysql多表连接查询方式 mysql多表查询面试题
  • Mysql 数据库去重(distinct)
    有时需要查询出某个字段不重复的记录,这时可以使用mysql提供的distinct这个关键字来过滤重复的记录,但是实际中我们往往用distinct来返回不重复字段的条数(count(distinct id)),其原因是distinct只能返回...
    99+
    2023-10-24
    数据库 mysql
  • MySQL查询重复数据
      假设有一个用户表 user,数据如下: 1、查询表中 uid 重复的数据 SELECT id, uid, name FROM USER WHERE uid IN (SELECT ...
    99+
    2018-06-05
    MySQL查询重复数据
  • 数据库查询去重的方法是什么
    数据库查询去重的方法有以下几种:1. 使用DISTINCT关键字:在SELECT语句中使用DISTINCT关键字可以去除查询...
    99+
    2023-09-23
    数据库
  • 数据库去重(MYSQL和ORACLE)
    一、数据库中的去重操作(删除数据库中重复记录的SQL语句)主要有三种方法 (1)、rowid方法 (2)、group by 方法 (3)、distinct方法 1、用rowid方法 根据Oracle带的rowid属性,可以进行判断是否存在...
    99+
    2023-09-12
    数据库 oracle
  • MySQL数据库之联合查询 union
    目录1、应用场景2、基本语法3、order by的使用前言: 将多个查询结果的结果集合并到一起(纵向合并),字段数不变,多个查询结果的记录数合并 1、应用场景 同一张表中不同结果合并...
    99+
    2022-11-13
  • MySQL数据库之怎么联合查询
    这篇文章主要介绍了MySQL数据库之怎么联合查询的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇MySQL数据库之怎么联合查询文章都会有所收获,下面我们一起来看看吧。前言:将多个查询结果的结果集合并到一起(纵向合...
    99+
    2023-06-30
  • MySQL 数据库查询数据,过滤重复数据保留一条数据-
    转自: http://www.maomao365.com/p=10564  摘要: 下文讲述MySQL数据库查询重复数据时,只保留一条数据的方法 实现思路: 在MySQL数据库中没有row_number函数,所以我们需变向实现此功能...
    99+
    2021-10-02
    MySQL 数据库查询数据,过滤重复数据保留一条数据-
  • MySQL数据库查询进阶之多表查询详解
    目录一、多表查询1.引出2.笛卡尔积3. 笛卡尔积的解决方法二、多表查询分类1.等值连接和非等值连接2.自连接和非自连接3.内连接和外连接4.自然连接5.using连接三、子查询1....
    99+
    2022-11-13
  • 关系型数据库之Mysql查询及数据库管理(二)
        在关系型数据库之Mysql编译安装及数据库基础(一)我们大致了解的数据库的基本应用了,下面我们来聊聊MySQL的家常吧,在实际生产工作中我需要了解自己再数据库领域应该选...
    99+
    2022-10-18
  • MySQL-查询数据库(一)
    有志者,事竟成 文章持续更新,可以微信搜索【小奇JAVA面试】第一时间阅读,回复【资料】获取福利,回复【项目】获取项目源码,回复【简历模板】获取简历模板,回复【学习路线图】获取学习路线图。 ...
    99+
    2023-09-07
    mysql java 数据库
  • MySql数据库基础之子查询详解
    目录1. 什么是子查询2. 子查询可以出现在哪里3. where子句的子查询4. from子句的子查询5. select后面出现的子查询1. 什么是子查询 select 语句中嵌套 select 语句...
    99+
    2022-09-19
  • MySQL 数据查重、去重的实现语句
    有一个表user,字段分别有id、nick_name、password、email、phone。 一、单字段(nick_name) 查出所有有重复记录的所有记录 select * from user w...
    99+
    2022-05-24
    MySQL 数据查重 MySQL 数据去重
  • mysql数据库去除重复数据的方法
    这篇文章主要介绍了mysql数据库去除重复数据的方法,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。mysql数据库去除重复数据的方法:1、查询需...
    99+
    2022-10-18
  • oracle怎么查询并去掉重复数据
    在Oracle中,可以使用`SELECT DISTINCT`关键字来查询并去掉重复数据。具体的查询语法如下:```SELEC...
    99+
    2023-08-31
    oracle
  • 查询数据(数据库)——简单查询
    目录 1.最简单的查询 (1)查询指定列 (2)查询所有列 (3)查询计算列 (4)为列起别名 (5)使用DISTINCT关键字消除重复元组 2.查询满足条件的元组 (1) 比较大小 (2) 确定范围 (3) 确定集合 (4) 字符匹配 (...
    99+
    2023-10-11
    数据库 sql mysql
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作