本文主要介绍在MySQL中使用重复数据删除distinct方法的详细例子。Distinct用于查询非重复记录的数量。distinct是指后面所有参数的拼接都取不重复的记录,即找到的参数的每一行记录都是唯一的。对房地产感兴趣的可以去了解一下。
一 distinct
含义:distinct用于查询非重复记录的个数,即distinct返回非重复字段的个数(count(distinct id)),因为distinct只能返回他的目标字段,不能返回其他字段。
用法注意:
1 . distinct[查询字段],必须放在要查询的字段的开头,即第一个参数中;
2.只能在SELECT语句中使用,不能在INSERT、DELETE、UPDATE中使用。
3.DISTINCT是指后面所有参数的拼接记录不重复,即拼接参数的每一行记录都是唯一的。
4.它不能与所有的同时使用。默认情况下,查询时会返回所有结果。
1.1只对一个字段查重
检查字段的重复意味着在字段中选择一列不重复的数据。
示例表:psur_list
PLAN_NUMBER字段重复数据删除,语句:
从psur_list中选择不同的PLAN _ NUMBER
结果如下:
1.2多个字段去重
复制多个字段意味着选择由多个字段拼接而成的一条记录,以及所有未被复制的记录。
示例表:psur_list
“计划编号”和“产品名称”字段已删除重复项,并且语句:
从psur_list中选择DISTINCT PLAN_NUMBER,PRODUCT_NAME。
结果如下:
预期结果:只有第一个参数PLAN_NUMBER具有唯一值。
解决方案1:使用group_concat函数。
声明:
SELECT GROUP _ CONCAT(DISTINCT PLAN _ NUMBER)AS PLAN _ NUMBER,PRODUCT _ name from psur _ list GROUP BY PLAN _ NUMBER
解决方案2:使用分组依据
声明:
从psur_list GROUP BY PLAN_NUMBER中选择PLAN_NUMBER,PRODUCT_NAME
结果如下:
1.3针对null处理
Distinct不会筛选出空值,返回的结果包含空值。
psur_list表如下:
为了复制国家字段,语句:
从psur_list中选择不同的国家
结果如下:
1.4与distinctrow同义
声明:
从psur_list中选择DISTINCTROW COUNTRY
结果如下:
二 聚合函数中使用distinct
DISTINCT通常在聚合函数中与COUNT结合使用。Count()过滤掉空项。
声明:
从psur_list中选择计数(不同国家)
结果如下:【实际有4条记录包含空项,语句执行后,空项被过滤计算为3条】
关于在MySQL中使用重复数据删除distinct方法的示例的详细说明,本文到此结束。有关MySQL重复数据删除的更多相关内容,请搜索我们以前的文章或继续浏览下面的相关文章。希望大家以后能多多支持我们!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。