介绍2种面试会遇到的 MySQL 常用去重方法

原创 HuangLongPu     发表于  2022-05-26 17:37       10
原文链接:

提到 SQL 语句去重,很多人想到的就是关键字“DISTINCT”。确实,他主要的功能就是去重。今天分享一下2种面试会遇到的 MySQL 常用去重方法,分别是“DISTINCT”和“GROUP BY”,而后者往往会被忽略。

作者准备了一张城市表,主要展示城市编码和省份编码。SQL如下:

select c.city_code,c.province_code from sys_city_code c where c.city_code is not null;

执行效果如下(总共4305条记录):


接下来针对省份编码去重,城市编码和省份编码为多对一的关系,这个不难理解。

  • DISTINCT 语句去重
SQL 语句如下:
select DISTINCT c.province_code from sys_city_code c where c.city_code is not null;

执行效果如下(总共34条记录):


  • GROUP BY 语句去重
SQL语句如下:
select c.province_code from sys_city_code c where c.city_code is not null GROUP BY c.province_code;

执行效果如下(总共34条记录,与“DISTINCT”方式效果一致):



以上两种方式,均可实现去重效果,开发者可根据实际情况和使用习惯进行选择。

相关文章

HuangLongPu
5
30128/45000
文章数
191
阅读量
104165
原创
148
广告
公众号
QQ讨论群