数据库教程:MySQL分组查询group by实例

group by使用方法实例讲解MySQL中GROUP BY语句用于对某个或某些字段查询分组,并返回这个字段重复记录的第一条,也就是每个小组(无排序)里面的第一条。本文章通过实例向大家介绍mysql group by使用方法和需要注意的地方,感兴趣的朋友可以参考一下。现在有这样一个数据表 bookgroup by基本实例我们对city字段进行分组查询SELECT * FROM book GROUP BY city结果如下:可以看出,group by是根据city来进行分组的,因为book

group by使用方法实例讲解
MySQL中GROUP BY语句用于对某个或某些字段查询分组,并返回这个字段重复记录的第一条,也就是每个小组(无排序)里面的第一条。

数据库技术:MySQL分组查询group by实例章通过实例向大家介绍mysql group by使用方法和需要注意的地方,感兴趣的朋友可以参考一下。

现在有这样一个数据表 book
MySQL分组查询group by实例

group by基本实例
我们对city字段进行分组查询

SELECT * FROM book GROUP BY city
结果如下:
MySQL分组查询group by实例

可以看出,group by是根据city来进行分组的,因为book表中有三个不同的city值,所以会出现三行数据,并且相同的city只返回结果集中的第一条数据。
MySQL分组查询group by实例

group by多个字段
下面来看一下group by后面跟多个字段

SELECT * FROM book GROUP BY city,last_name
结果如下:
MySQL分组查询group by实例

group by后面跟多个字段如何理解呢?

GROUP BY city, last_name是指所有city, last_name项只要有一个不相同就会分一个组的。因为上面book表中第二行数据与第三行数据的city和last_name相同,所以会舍弃其中的一行数据,一般都是舍弃后面一行,所以第二行数据保留了。如下图(先进行city分组如红色,在进行last_name分组如蓝色,然后都取第一条数据):

MySQL分组查询group by实例

group by与聚合函数
一般情况下,group by都会与聚合函数一起使用,以达到复杂的数据查询要求。

比如我们要根据city分组后,获取每一组有多少条数据

SELECT ,count() FROM book GROUP BY city
结果为:

MySQL分组查询group by实例

group by having
group by having用于指示被选择的行必须满足的条件

比如,我们根据city分组,但我们只需要查询出每一组的数据条数大于1的。

SELECT ,count() FROM book GROUP BY city having count(*)>1
结果集为:

MySQL分组查询group by实例

需要了解更多数据库技术:MySQL分组查询group by实例,都可以关注数据库技术分享栏目—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/dtteaching/818270.html

(1)
上一篇 2021年9月16日
下一篇 2021年9月16日

精彩推荐