mysql groupy by多个字段_mysql group by 实现对多个字段进行分组
mysql group by 实现对多个字段进行分组
发布时间:2020-10-30 20:47:29
来源:亿速云
阅读:135
作者:Leah
今天就跟大家聊聊有关mysql group by 实现对多个字段进行分组,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
在平时的开发任务中我们经常会用到MYSQL的GROUP BY分组, 用来获取数据表中以分组字段为依据的统计数据。
比如有一个学生选课表,表结构如下:Table: Subject_Selection
Subject Semester Attendee
---------------------------------
ITB001 1 John
ITB001 1 Bob
ITB001 1 Mickey
ITB001 2 Jenny
ITB001 2 James
MKB114 1 John
MKB114 1 Erica
我们想统计每门课程有多少个学生报名,应用如下SQL:
SELECT Subject, Count(*)
FROM Subject_Selection
GROUP BY Subject
得到如下结果:Subject Count
------------------------------
ITB001 5
MKB114 2
因为表里记录了有5个学生选择ITB001,2个学生选择了MKB114。
产生这个结果的原因是:
GROUP BY X意思是将所有具有相同X字段值的记录放到一个分组里。
那么GROUP BY X, Y呢?
GROUP BY X, Y意思是将所有具有相同X字段值和Y字段值的记录放到一个分组里。
我们下面再接着要求统计出每门学科每个学期有多少人选择,应用如下SQL:
SELECT Subject, Semester, Count(*)
FROM Subject_Selection
GROUP BY Subject, Semester
上面SQL的意思是,对Subject_Selection表中的数据进行分组,将具有相同Subject和Semester字段值的记录放到同一个分组里去, 然后对每个分组中的数据应用聚合函数(COUNT,SUM, AVG,etc)。
得到的结果是:Subject Semester Count
------------------------------
ITB001 1 3
ITB001 2 2
MKB114 1 2
从表中的记录我们可以看出这个分组结果是正确的有3个学生在第一学期选择了ITB001, 2个学生在第二学期选择了ITB001,还有两个学生在第一学期选择了MKB114, 没人在第二学期选择MKB114。
看完上述内容,你们对mysql group by 实现对多个字段进行分组有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
mysql groupy by多个字段_mysql group by 实现对多个字段进行分组相关推荐
- 在mysql中删除表中字段_MySQL中的表中增加删除字段
1.增加一个字段 alter table user表 add COLUMN new1字段 VARCHAR(20) NOT NULL DEFAULT 0; //增加一个字段,VARCHERA 20 ...
- mysql数据库表添加字段_mysql数据库怎么给表增加一个字段?
mysql数据库给表增加一个字段的方法:可以使用"ALTER TABLE"语句来增加一个字段,语法格式"ALTER TABLE 表名 ADD 新字段名 数据类型 [约束条 ...
- mysql合并多条纪录字段_mysql合并多条记录的单个字段去一条记录
mysql怎么合并多条记录的单个字段去一条记录,今天在网上找了一下,方法如下: 测试用表结构: -- ------------------------------------------------- ...
- mysql修改虚拟列属性失败_mysql虚拟列(Generated Columns)及JSON字段类型的使用
mysql 5.7中有很多新的特性,但平时可能很少用到,这里列举2个实用的功能:虚拟列及json字段类型 一.先创建一个测试表: drop table if exists t_people; CREA ...
- mysql下载是port报错_mysql group replication添加复制节点报错
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 恳求各位大神给把把脉,到底问题处在那个环节 环境: 三台物理机 192.168.1.3 192.168.1.4 192.168.1.5 配置文件: [my ...
- mysql连接所有字段_mysql:重命名连接的所有字段
我没有发现任何相关信息. 这是我的查询: SELECT p.*, pa.*, a.* FROM produit p LEFT OUTER JOIN produit_attribut pa ON p.i ...
- mysql怎么进行单表查询_MySQL之单表查询
一.单表查询的语法 SELECT 字段1,字段2... FROM 表名 WHERE 条件 GROUP BY field HAVING 筛选 ORDER BY field LIMIT 限制条数 二.关键 ...
- mysql group by 天_MySQL group by语句如何优化
在MySQL中,新建立一张表,该表有三个字段,分别是id,a,b,插入1000条每个字段都相等的记录,如下: mysql> show create table t1G ************* ...
- mysql 子查询多个字段_MySql基础
本文章目标 一.为什么要学习数据库 二.数据库的相关概念 DBMS.DB.SQL 三.数据库存储数据的特点 四.初始MySQL MySQL产品的介绍 MySQL产品的安装 ...
最新文章
- 树形dp ---- 2018年杭电多校第二场 H travel
- 以QQ传输文件为例-设计测试用例
- 增长黑客的秘诀在于数据的运用
- 指定rviz的点启动_好消息!武汉已经启动新冠疫苗紧急接种工作
- Hadoop的多节点集群启动,唯独没有namenode进程?(血淋淋教训,一定拍快照)(四十五)...
- java context.write_Channel.write() 和 ChannelHandlerContext.write() 的区别
- brew安装_解决安装brew报的curl的443错误
- redis安装+启动和连接+让redis在后台运行
- osgearth介绍
- cmd 220 ftp 远程主机关闭连接_网络基础知识:FTP工作流程
- [Linux] ubuntu server sudo出现sudo:must be setuid root 完美解决办法
- ENSP-----ISIS协议
- 导论 计算机组成 ppt,《计算机导论》说课稿PPT课件.ppt
- 解决VMWare启动虚拟机出现错误“该虚拟机似乎正在使用中,请按“获取所有权(T)”按钮获取它的所有权。”
- 三天打鱼两天晒网的直接差距
- ASF网站自带python脚本完成sentinel-1数据自动下载
- java向微信公众号---发送模板和图文消息
- UI5-文档-4.5-Controllers
- TCP和UDP的区别有哪些?
- Android 音频源码分析——AndroidRecord录音(一)