我的编程空间,编程开发者的网络收藏夹
学习永远不晚

MySQL 中 SELECT DISTINCT 与 GROUP BY 的区别?

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

MySQL 中 SELECT DISTINCT 与 GROUP BY 的区别?

SELECT DISTINCT 可用于给出不同的值。用它来删除重复的记录并 它也可以与聚合函数一起使用。例如:MAX、AVG等。这个都可以应用 在单个列上。

现在,我正在创建一个表以对列使用 SELECT DISTINCT。创建一个表 CREATE 命令的帮助 -

mysql> CREATE TABLE DistinctDemo
-> (
-> id int,
-> name varchar(100)
-> );
Query OK, 0 rows affected (0.64 sec)

插入记录 −

mysql> INSERT into DistinctDemo values(1,'John');
Query OK, 1 row affected (0.17 sec)

mysql> INSERT into DistinctDemo values(2,'John');
Query OK, 1 row affected (0.18 sec)

mysql> INSERT into DistinctDemo values(3,'Bob');
Query OK, 1 row affected (0.17 sec)

mysql> INSERT into DistinctDemo values(4,'John');
Query OK, 1 row affected (0.15 sec)

mysql> INSERT into DistinctDemo values(5,'David');
Query OK, 1 row affected (0.17 sec)

mysql> INSERT into DistinctDemo values(6,'Bob');
Query OK, 1 row affected (0.16 sec)

借助 SELECT 命令显示所有记录。查询如下 -

mysql> SELECT * from DistinctDemo;

执行上述查询后,我们将获得以下输出 −

+------+-------+
| id   | name  |
+------+-------+
| 1    | John  |
| 2    | John  |
| 3    | Bob   |
| 4    | John  |
| 5    | David |
| 6    | Bob   |
+------+-------+
6 rows in set (0.00 sec)

上面,我们有六条记录,其中John和Bob是重复的。我们可以应用DISTINCT来 删除重复记录。语法如下 −

SELECT distinctcolumn_name from yourTableName order by column_name;

现在,我正在应用上述查询来删除重复项 -

mysql> SELECT distinct name from DistinctDemo;

以下是输出

+-------+
| name  |
+-------+
| John  |
| Bob   |
| David |
+-------+
3 rows in set (0.00 sec)

Select group by 可用于从不同列获取数据并分组为一个或多个 column. This can also be applied with aggregate function.For Example:SUM,AVG etc.

Firstly, I am creating a table with the CREATE 命令的帮助 -

column. 这也可以与聚合函数一起使用。例如:SUM,AVG等。

首先,我正在使用CREATE命令创建一个表 −

mysql> CREATE table GroupDemo1
-> (
-> id int,
-> name varchar(100),
-> address varchar(100)
-> );
Query OK, 0 rows affected (0.68 sec)

创建表后,我将记录插入到表中,如下所示 −

mysql> INSERT into GroupDemo1 values(1,'John','US');
Query OK, 1 row affected (0.18 sec)

mysql> INSERT into GroupDemo1 values(2,'Bob','UK');
Query OK, 1 row affected (0.13 sec)

mysql> INSERT into GroupDemo1 values(3,'David','US');
Query OK, 1 row affected (0.12 sec)

mysql> INSERT into GroupDemo1 values(4,'David','US');
Query OK, 1 row affected (0.15 sec)

现在,我们可以借助SELECT命令显示所有记录 −

mysql> SELECT * from GroupDemo1;

以下是输出 -

+------+-------+---------+
| id   | name  | address |
+------+-------+---------+
| 1    | John  | US      |
| 2    | Bob   | UK      |
| 3    | David | US      |
| 4    | David | US      |
+------+-------+---------+
4 rows in set (0.00 sec)

我将应用 GROUP BY 来了解相同地址的出现次数。这里是 语法 −

SELECT column_name1,......N aggregate function( ) from yourTableName group by
column_name;

让我们将上述语法应用于 GROUP BY -

mysql> SELECT address, count(*) from GroupDemo1 group by address;

以下是输出 -

+---------+----------+
| address | count(*) |
+---------+----------+
| US      | 3        |
| UK      | 1        |
+---------+----------+
2 rows in set (0.00 sec)

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

MySQL 中 SELECT DISTINCT 与 GROUP BY 的区别?

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

下载Word文档

猜你喜欢

MySQL 中 SELECT DISTINCT 与 GROUP BY 的区别?

SELECT DISTINCT 可用于给出不同的值。用它来删除重复的记录并它也可以与聚合函数一起使用。例如:MAX、AVG等。这个都可以应用在单个列上。现在,我正在创建一个表以对列使用 SELECT DISTINCT。创建一个表CRE
2023-10-22

Mysql: distinct去重 group by的区别

单纯的去重操作使用distinct,速度是快于group by的。 distinct支持单列、多列的去重方式。  单列去重的方式简明易懂,即相同值只保留1个。  多列的去重则是根据指定的去重的列信息来进行,即只有所有指定的列信息都相同,才会被认为是重复的信息。
Mysql: distinct去重 group by的区别
2018-10-31

MySQL去重中distinct和group by的区别浅析

今天无意中听到有同事在讨论,distinct和groupby有什么区别,下面这篇文章主要给大家介绍了关于MySQL去重中distinct和group by区别的相关资料,需要的朋友可以参考下
2022-11-13

MySQL中的distinct与group by如何使用

这篇文章主要讲解了“MySQL中的distinct与group by如何使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MySQL中的distinct与group by如何使用”吧!先说大
2023-07-05

MySQL中distinct和group by去重效率区别浅析

目录一、distinct二、group by三、distinct 和 group by 比较总结一、distinctdistinct的作用在mysql中,distinct关键字的主要作用就是对数据库表中一个或www.cppcns.com
2023-03-03

MySQL中distinct和group by去重效率区别浅析

distinct与groupby均可用于去重,下面这篇文章主要给大家介绍了关于MySQL中distinct和group by去重效率区别的相关资料,文中介绍的非常详细,需要的朋友可以参考下
2023-03-03

MySQL中distinct和group by去重效率区别是什么

本篇内容介绍了“MySQL中distinct和group by去重效率区别是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、disti
2023-07-05

MySQL中的distinct与group by比较使用方法

目录distinct的使用distinct用法distinct 多列去重group by的使用单列去重多列去重区别示例distinct和group by原理隐式排序先说大致的结论 :在语义相同,有索引的情况下:group by和 dist
2023-03-10

hive中order by与distribute by的区别和联系是什么

本篇内容主要讲解“hive中order by与distribute by的区别和联系是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“hive中order by与distribute by的区
2023-06-04

mysql中null与(null)的区别

在 mysql 中,null 代表空值,不占用空间,而 (null) 是空字符串值,占用 1 字节空间。它们的区别包括:存储方式不同、比较方式不同、插入方式不同、聚合函数处理方式不同、索引使用不同。MySQL 中 NULL 与 (NULL)
mysql中null与(null)的区别
2024-05-01

mysql中null与(null的区别

mysql 中 null 和 (null) 区别如下:null 表示未知值,而 (null) 表示明确空值。null 不占用存储空间,而 (null) 占用一个字节。null 不等于任何值,而 (null) 等于它自己。null 用于表示缺
mysql中null与(null的区别
2024-05-01

MySQL数据库Group by分组之后再统计数目Count(*)与不分组直接统计数目的区别

简述问题“统计最新时刻处于某一状态的设备的数量”1. 首先子查询结果,可以看到每个设备最新的状态信息     2.1 在子查询的基础上,对设备状态进行分组,进行统计每个状态的设备数量 2.1.1 可以看到处于"火警"状态的数量是2,没有问题,但是看下一张图  
MySQL数据库Group by分组之后再统计数目Count(*)与不分组直接统计数目的区别
2014-09-06

mysql中 datatime与timestamp的区别说明

mysql中有三种日期类型: date(年-月-日) create table test(hiredate date); datetime(日期时间类型) create table test(hiredate datetime) times
2022-05-27

编程热搜

目录