在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
Group by分组查询怎么用?需要掌握哪些内容?groub by分组将查询结果按照1个或多个字段进行分组,字段值相同的为一组,可用于单个字段分组也可用于多个字段分组。
学习目标:能够写出分组查询的SQL语句。
1. 分组查询是什么?
分组查询就是将查询结果按照指定字段进行分组,字段中数据相等的分为一组。分组查询基本的语法格式如下:
GROUP BY 列名 [HAVING 条件表达式] [WITH ROLLUP]
说明:
(1)列名: 是指按照指定字段的值进行分组。
(2)HAVING 条件表达式: 用来过滤分组后的数据。
(3)WITH ROLLUP:在所有记录的最后加上一条记录,显示select查询时聚合函数的统计和计算结果
2. group by的怎么使用?
group by可用于单个字段分组,也可用于多个字段分组:
-- 根据gender字段来分组
select gender from students group by gender;
-- 根据name和gender字段进行分组
select name, gender from students group by name, gender;
3. group by + group_concat()的使用
-- 根据gender字段进行分组, 查询gender字段和分组的name字段信息
select gender,group_concat(name) from students group by gender;
4. group by + 聚合函数的使用
-- 统计不同性别的人的平均年龄
select gender,avg(age) from students group by gender;
-- 统计不同性别的人的个数
select gender,count(*) from students group by gender;
5. group by + having的使用
having作用和where类似都是过滤数据的,但having是过滤分组数据的,只能用于group by
-- 根据gender字段进行分组,统计分组条数大于2的
select gender,count(*) from students group by gender having count(*)>2;
6. group by + with rollup的使用
with rollup的作用是:在最后记录后面新增一行,显示select查询时聚合函数的统计和计算结果
-- 根据gender字段进行分组,汇总总人数
select gender,count(*) from students group by gender with rollup;
-- 根据gender字段进行分组,汇总所有人的年龄
select gender,group_concat(age) from students group by gender with rollup;
7. 小结
group by 根据指定的一个或者多个字段对数据进行分组;
group_concat(字段名)函数是统计每个分组指定字段的信息集合;
聚合函数在和 group by 结合使用时, 聚合函数统计和计算的是每个分组的数据;
having 是对分组数据进行条件过滤;
with rollup在最后记录后面新增一行,显示select查询时聚合函数的统计和计算结果;
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
如何同时使用Python2和Python3?
Python的两个大的版本分支,即Python2和Python3。到底是选择Python2还是选择Python3,相信难倒了不少程序员。因此大家常常不得不同时安装Python2和Python3,如何让两个版本的Python兼容,如何同时使用Python2和Python3?就是我们今天要谈论的问题。
8042
2019-07-29 20:26:57
Python中的“字典”怎么学?有没有详细的教程?
Python中的“字典”怎么学?有没有详细的教程?注意,此“字典”非新华字典,这个“字典”指的是键/值对之间用冒号隔开,项之间用逗号隔开,整个字典用大括号括起来。大家千万不能弄混,这是学习Python的知识点之一,接下来小编结合案例为大家详细讲解“字典”。
4710
2020-01-11 14:20:31
全套Python学习路线,快速上手
Python的初学者总希望能够得到一份Python学习路线图,小编经过多方面汇总,总结出比较全套Python学习路线,快速上手。
4478
2022-05-31 12:00:05
Python编程学习入门须知
Python编程语言因其独特的优势,在众多编程语言中脱颖而出,成为世界范围内备受追捧的编程语言。如今,Python的学习者除了编程开发爱好者,还有许多非IT技术的从业者,但是大多数人在学习Python编程的路上,常常是从入门到放弃。为了帮助大家可以更好的学习Python,本文总结了Python编程学习入门须知,赶紧来一起看看吧!
4907
2020-06-24 15:15:55
HTML的作用是什么?用来做什么?
HTML的作用是什么?用来做什么?HTML用来开发网页的是开发网页的语言。超文本标记语言是一种用于创建网页的标准标记语言,可以使用HTML来建立WEB站点,HTML运行在浏览器上由浏览器来解析。
10048
2021-12-10 16:00:06