除了distinct还有什么去重,distinct 多列去重

  除了distinct还有什么去重,distinct 多列去重

  Distinct仅用于消除重复,而group by则用于汇总统计数据。它们在所能实现的功能上有一些相似之处,但要仔细区分,因为如果用错了场景,效率上的差异会翻倍。

  简单的重复数据消除操作使用distinct,比group by更快。

  明显的

  Distinct支持单列和多列重复数据消除。

  单列重复数据消除方法简单易懂,即只保留其中一个相同的值。

  许多列根据指定的已消除重复的列信息进行重复数据消除,也就是说,只有当所有指定的列信息都相同时,才会将其视为重复信息。

  干巴巴的话很难懂,比如:

  示例数据表中的数据:

  mysql select * from talk _ test

  - - -

   id 姓名手机号码

  - - -

   1 xiao9 555555

   2 xiao6 666666

   3 xiao9 888888

   4 xiao9 555555

   5 xiao6 777777

  - - -

  单列重复数据消除后的结果:

  MySQL select distinct(name)from talk _ test;

  -

  姓名

  -

  小9

  小6

  -

  集合中的2行(0.01秒)

  mysql select distinct(移动)from talk _ test

  -

  手机

  -

   555555

   666666

   888888

   777777

  -

  * *将只保留指定列的信息。

  多列重复数据消除的结果:

  mysql select distinct name,mobile from talk _ test

  - -

  姓名手机

  - -

   xiao9 555555

   xiao6 666666

   xiao9 888888

   xiao6 777777

  - -

  * *只有当所有指定的列信息都相同时,才会被视为重复信息。

除了distinct还有什么去重,distinct 多列去重