服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Mysql - MySQL过滤重复数据的两种方法示例

MySQL过滤重复数据的两种方法示例

2023-04-16 17:42普通网友 Mysql

数据库生成环境中经常会遇到表中有重复的数据,或者进行关联过程中产生重复数据,下面这篇文章主要给大家介绍了关于MySQL过滤重复数据的两种方法,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

方法1:加关键字 DISTINCT

在mysql中,可以利用“SELECT”语句和“DISTINCT”关键字来进行去重查询,过滤掉重复的数据,语法“SELECT DISTINCT 字段名 FROM 数据表名;”。

DISTINCT 关键字的语法格式为:

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

其中,“字段名”为需要消除重复记录的字段名称,多个字段时用逗号隔开。

示例

?
1
2
3
4
5
-- 示例1
SELECT DISTINCT name FROM Product WHERE price>100;
 
-- 示例2
SELECT DISTINCT name,age FROM student;

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

  • DISTINCT 关键字只能在 SELECT 语句中使用。
  • 在对一个或多个字段去重时,DISTINCT 关键字必须在所有字段的最前面。
  • 如果 DISTINCT 关键字后有多个字段,则会对多个字段进行组合去重,也就是说,只有多个字段组合起来完全是一样的情况下才会被去重。

在 MySQL 中使用SELECT语句执行简单的数据查询时,返回的是所有匹配的记录。如果表中的某些字段没有唯一性约束,那么这些字段就可能存在重复值。为了实现查询不重复的数据,MySQL 提供了DISTINCT关键字。

DISTINCT 关键字的主要作用就是对数据表中一个或多个字段重复的数据进行过滤,只返回其中的一条数据给用户。

方法2:用GROUP By 分组

group by 有一个原则,就是 select 后面的所有列中,没有使用聚合函数的列,必须出现在 group by 后面。

示例

?
1
2
-- GROUP By后面出现的属性并需在SELECT后面也出现
SELECT name FROM Product WHERE price<100 GROUP By name;

最后

到此这篇关于MySQL过滤重复数据的两种方法的文章就介绍到这了,更多相关MySQL过滤重复数据内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/Bejpse/article/details/126802791

延伸 · 阅读

精彩推荐
  • MysqlMySQL添加字段和修改字段的方法

    MySQL添加字段和修改字段的方法

    MySQL数据库系统相信大家都比较熟悉了,下文对添加字段和修改字段的方法作了详细的说明,供您参考学习之用。...

    服务器之家7552022-02-20
  • Mysql什么是数据库?用最简单的方法讲明白数据库

    什么是数据库?用最简单的方法讲明白数据库

    数据库是一个以某种有组织的方式存储的数据集合。数据库(database)是保存有组织的数据的容器。数据库管理系统(DBMS)是一种数据库软件,MySQL是一种...

    今日头条3202020-11-24
  • Mysql使用LEFT JOIN 统计左右存在的数据问题

    使用LEFT JOIN 统计左右存在的数据问题

    最近做了一个数据模块的统计,统计企业收款、发票相关的数据,开始统计是比较简单,后面再拆分账套统计就有点小复杂,这篇文章主要介绍了使用LEF...

    小码code11822022-11-28
  • Mysql详细谈谈MYSQL中的COLLATE是什么

    详细谈谈MYSQL中的COLLATE是什么

    mysql COLLATE是校对集的意思,可以理解为,排序规则等,下面这篇文章详细的给大家介绍了关于MYSQL中COLLATE是什么的相关资料,需要的朋友可以参考下...

    horstxu4082021-08-16
  • MysqlMySQL多实例配置方案

    MySQL多实例配置方案

    MySQL多实例就是,在一台机器上开启多个不同的服务端口(如:3306,3307,3308...),运行多个MySQL服务进程,这些服务进程通过不同的socket监听不同的端口提供...

    大牙啊3122020-08-29
  • Mysqlmysql不是内部命令的错误解决方案

    mysql不是内部命令的错误解决方案

    在本篇内容里小编给各位分享的是一篇关于mysql不是内部命令的错误解决方案,需要的朋友们可以学习下。...

    尤及9262021-01-28
  • MysqlMySQL由浅入深探究存储过程

    MySQL由浅入深探究存储过程

    这篇文章主要介绍了MySQL存储过程,存储过程,也叫做存储程序,是一条或者多条SQL语句的集合,可以视为批量处理,但是其作用不仅仅局限于批量处理...

    花铛4582022-12-05
  • MysqlMySQL删除和插入数据很慢的问题解决

    MySQL删除和插入数据很慢的问题解决

    公司开发人员在测试环境中执行一条 insert 语句时,需要花费 10 几秒才可以执行成功。所以本文就来解决一下这个问题,感兴趣的小伙伴们可以参考一下...

    店伙计10242021-08-10