加入收藏 | 设为首页 | 会员中心 | 我要投稿 拼字网 - 核心网 (https://www.hexinwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

Mysql中distinct与group by的去重方面的差别

发布时间:2022-02-28 23:29:39 所属栏目:MySql教程 来源:互联网
导读:distinct简单来说就是用来去重的,而group by的设计目的则是用来聚合统计的,两者在能够实现的功能上有些相同之处,但应该仔细区分。 单纯的去重操作使用distinct,速度是快于group by的。 distinct支持单列、多列的去重方式。 单列去重的方式简明易懂,即相
  distinct简单来说就是用来去重的,而group by的设计目的则是用来聚合统计的,两者在能够实现的功能上有些相同之处,但应该仔细区分。
 
  单纯的去重操作使用distinct,速度是快于group by的。
 
  distinct支持单列、多列的去重方式。
  单列去重的方式简明易懂,即相同值只保留1个。
  多列的去重则是根据指定的去重的列信息来进行,即只有所有指定的列信息都相同,才会被认为是重复的信息。
 
  group by使用的频率相对较高,但正如其功能一样,它的目的是用来进行聚合统计的,虽然也可能实现去重的功能,但这并不是它的长项。
 
  区别:
 
  1)distinct只是将重复的行从结果中出去;
 
  group by是按指定的列分组,一般这时在select中会用到聚合函数。
 
  2)distinct是把不同的记录显示出来。
 
  group by是在查询时先把纪录按照类别分出来再查询。
 
  group by 必须在查询结果中包含一个聚集函数,而distinct不用。

(编辑:拼字网 - 核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!