【mysql】哦买噶!多么强大的group by语句
GROUP BY 语句
- group by语句介绍
- 工具:
- 实例
- 建表 user表
- (1)基本用法
- (2)`GROUP BY`语句中的`GROUP_CONCAT`函数()
- (3)利用 `count`函数来查询性别的总人数
- (4)`where`语句
- (5) `SUM` `MAX` `MIN` `AVG` 函数
- (6)`HAVING ` 子句
- (7)`WITH ROLLUP` 子句:
- 结尾
group by语句介绍
GROUP BY 语句根据一个或多个列对结果集进行分组。在分组的列上我们可以使用 COUNT, SUM, AVG,等函数。
工具:
sqlyog
实例
建表 user表
CREATE TABLE `user` (`id` int(11) NOT NULL AUTO_INCREMENT,`name` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,`number` int(11) DEFAULT NULL,`sex` varchar(4) COLLATE utf8_unicode_ci DEFAULT NULL,`salary` int(11) DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
信息就不补充了~
(1)基本用法
根据性别 sex
来进行分组,查询 user
表中的姓名,年龄,性别。虽然是分组了,但只显示一个用户,其他的不显示。
SELECT NAME,age,sex FROM USER GROUP BY sex;
(2)GROUP BY
语句中的GROUP_CONCAT
函数()
根据 sex
字段,来查询 name
字段和 age
字段的详细信息。
SELECT sex ,GROUP_CONCAT(NAME), GROUP_CONCAT(age)FROM USER GROUP BY sex;
(3)利用 count
函数来查询性别的总人数
根据 sex
字段来查询 name
字段的详细信息和 sex
字段性别的人数。
SELECT sex ,GROUP_CONCAT(NAME),COUNT(sex) FROM USER GROUP BY sex;
(4)where
语句
根据 sex
字段进行分组,用 where
语句来查询年龄大于25的人数
SELECT sex ,GROUP_CONCAT(NAME),COUNT(sex) FROM USER WHERE age >25 GROUP BY sex;
(5) SUM
MAX
MIN
AVG
函数
根据 sex
用 SUM
MAX
MIN
AVG
函数来查询用户的总资金,最大资金,最小资金,平局资金
SELECT sex ,GROUP_CONCAT(NAME),COUNT(sex),SUM(salary),MAX(salary),MIN(salary),AVG(salary) FROM USER GROUP BY sex;
(6)HAVING
子句
在 SQL 中增加 HAVING 子句原因是,WHERE 关键字无法与聚合函数一起使用。
HAVING 子句可以让我们筛选分组后的各组数据。
根据 sex
语句进行分组,来查询各组中资金大于1500的组
SELECT sex ,GROUP_CONCAT(NAME),COUNT(sex) FROM USER GROUP BY sex HAVING SUM(salary)>1500;
(7)WITH ROLLUP
子句:
WITH ROLLUP
可以实现在分组统计数据基础上再进行相同的统计(SUM,AVG,COUNT…)。
SELECT sex ,GROUP_CONCAT(NAME),COUNT(sex),SUM(salary),MAX(salary),MIN(salary),AVG(salary) FROM USER GROUP BY sex WITH ROLLUP;
结尾
从中发现 GROUP BY
函数还是十分强大的,使得分组查找效率更高!
【mysql】哦买噶!多么强大的group by语句相关推荐
- uwp连接mysql数据库_mysql 8.0 新版本出现group by 语句不兼容问题
mysql 新版本出现group by 语句不兼容问题 1. 具体出错提示: [Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP ...
- mysql group by 天_MySQL group by语句如何优化
在MySQL中,新建立一张表,该表有三个字段,分别是id,a,b,插入1000条每个字段都相等的记录,如下: mysql> show create table t1G ************* ...
- mysql去重合并字符串,SQL编程:group by合并结果字符串 --- group_concat函数就能行...
1.表结构 create table tt(id int,v varchar(30)); insert into tt values(1,'a'),(1,'b'),(2,'b'),(2,'c'),(2 ...
- 《零基础》MySQL GROUP BY 语句(十九)
GROUP BY 语句根据一个或多个列对结果集进行分组. 在分组的列上我们可以使用 COUNT, SUM, AVG,等函数. GROUP BY 语法 SELECT column_name, funct ...
- MySQL(21)--- GROUP BY 语句
GROUP BY 语句根据一个或多个列对结果集进行分组. 在分组的列上我们可以使用 COUNT, SUM, AVG,等函数. GROUP BY 语法 SELECT column_name, funct ...
- mysql中关于group的语句指令_mysql不支持group by的解决方法小结
下载安装的是最新版的mysql5.7.x版本,默认是开启了 only_full_group_by 模式的,但开启这个模式后,原先的 group by 语句就报错,然后又把它移除了. 一旦开启 only ...
- mysql column which is not functionally dependent GROUP BY clause
Linux下使用mysql5.7出现这个错误:mysql column which is not functionally dependent GROUP BY clause 解决办法: 1.首先查询 ...
- Mysql数据库中的 Group by 语句的特殊之处(select 中的项目不必出现在Group by中)---不建议使用!
■以前的认知 (基本知识,完全正确) ・使用GROUP BY 语句时,SELECT中的项目,必须在GROUP BY 中出现 SELECTa, b, cFROMtable1GROUP BYa, b, c ...
- 不狠狠逼一下自己,永远不知道自己有多么强大
"不逼自己,永远不知道自己有多么强大." 这话颇流行,因为这话很赋能,特别成功学. 我相信很多人在自己的历程中都有过逼自己一下的时候:小军,你那次一周时间完成一篇英文论文是逼了自己 ...
最新文章
- MS DTC 无法正确处理 DC 升级/降级事件的解决
- redisson的锁的类型_利用Redisson实现分布式锁,并防止重复提交
- python pygame模块按键延迟_用pygame做游戏时,用pygame.KEYDOWN来实现的按键控制“不灵敏”能怎么解决?...
- [EBOOK]十大Java性能问题
- golang反编译_【Golang】脱胎换骨的defer(一)
- 专家观点:你必须了解的嵌入式Linux特性
- (转)解读NTFS(一)
- redis 系列17 持久化 AOF
- jQuery版Ajax的使用
- 惠普前总裁孙振耀指点职业规划(转帖)
- layui table动态选中_微信炫酷炸啦!超视觉动态壁纸来了,还自带音效!
- armbian ubuntu 桌面_Armbian国内源(Ubuntu18.04 Bionic)
- 基于注解的 Spring MVC 简单入门
- 使用java获取网络响应内容--Get请求方式
- 蚂蚁算法蚁群算法-原理-思路-步骤-程序实现
- 最适合入门的laravel初级教程(一)序言
- 对幅度谱和相位谱的理解
- 考研数学 妙题摘记(3) (求数列和的极限,附定积分定义法)
- 【c项目】网吧管理系统的设计和实现
- opencv-python 改变图片尺寸
热门文章
- 计算机管理中没有vhd,电脑重启后新建的VHD虚拟硬盘不见了怎么办|如何设置使VHD硬盘开机自动加载...
- SQL Servr 2008空间数据应用系列七:基于Bing Maps(Silverlight) 的空间数据展现
- It doesn't matter 应该怎么翻?
- 基于SSM的餐馆饭店酒店点餐收银系统设计与实现
- 数学建模之【遗传算法】
- ARM44B0机器人控制程序
- Linux下安装宋体以及微软雅黑字体-转PDF后不显示中文,以及中文乱码
- 工厂人员定位系统如何实现工厂数字化转型
- 【教程(非专业)】VS——完全卸载&卸载后重装
- 哪些 Python 库让你相见恨晚?【转】