mysql按照学生分组查询_MySQL分组查询
在对数据表中数据进行统计时,可能需要按照一定的类别分别进行统计,比如,分别统计student表中,gender字段值为na、nv和NULL的学生成绩grade之和
MySQL中,使用GROUP BY按某个字段,或者多个字段中的值,进行分组,字段中值相同的为一组
SELECT 字段名1,字段名2,……
FROM 表名
WHERE BY 字段名1,字段名2,……[HAVING 条件表达式];
参数说明
指定的字段名1、字段名2,是对查询结果分组的依据
HAVING关键字,指定条件表达式,对分组后的内容进行过滤
GROUP BY,一般和聚合函数一起使用,如果,查询的字段出现在GROUP BY后,却没有包含在聚合函数中,该字段显示的是,分组后的第一条记录的值,这样,可能会导致查询结果不符合我们的预期
一、单独使用GROUP BY分组
单独使用GROUP BY关键字,查询的是每个分组中的一条记录
查询student表中的记录,安装gender字段值进行分组
可以看出,返回了3条记录,分别是gender字段值为NULL、nv、na的记录,查询结果按照gender字段中不同的值进行了分类,然后,值显示每个分组中的一条记录,意义不大,一般情况下,GROUP BY都和聚合函数一起使用
二、GROUP BY和聚合函数,一起使用
GROUP BY和聚合函数,一起使用,可以统计出某个,或者某些字段在一个分组中的最大值、最小值、平均值
查询student表,按照gender字段值进行分组,计算出每个分组中各有多少名学生
可以看出,GROUP BY对gender字段进行了分组,然后,通过COUNT()函数统计出了每组的数量
三、GROUP BY和HAVING关键字,一起使用
HAVING关键字和WHERE关键字的作用相同,都是用于设置条件表达式,对查询结果进行过滤。
两者的区别,HAVING关键字后,可以跟聚合函数,而WHERE关键字不能,通常情况下,HAVING关键字,都是和GROUP BY一起使用,用于对分组后的结果进行过滤
查询student表,按照gender字段进行分组,查询出grade字段值之和小于300的分组
可以看出,只有gender字段值为NULL和nv的分组,grade字段值之和小于300
验证查询结果,对gender字段值为na的记录,grade字段值之和进行查询
可以看出,gender字段值为na,所有学生的grade字段之和为523
mysql按照学生分组查询_MySQL分组查询相关推荐
- mysql 分类查询_MySQL:分组查询
#进阶5:分组查询 /*语法:select 分组函数,列(要求出现在group by的后面)from 表[where 筛选条件]group by 分组的列表[order by 子句]注意:查询列表必须 ...
- MySQL实验四数据库的查询_MySQL数据库查询(实验四)
MySQL数据库查询 准备工作:脚本文件xkgl.sql下载:xkgl脚本.sql 1.执行脚本xkgl.sql (创建xkgl库.表及插入数据),观察有无错误,如有记录错误信息,并解决. (1) 执 ...
- mysql数据库的查询_mysql数据库查询
查询数据指从数据库中获取所需要的数据.查询数据是数据库操作中最常用,也是最重要的操作.用户可以根据自己对数据的需求,使用不同的查询方式.通过不同的查询方式,可以获得不同的数据.MySQL中是使用SEL ...
- mysql商品查询_mysql的查询、子查询及连接查询(商城查询常用)
一.mysql查询的五种子句 where(条件查询).having(筛选).group by(分组).order by(排序).limit(限制结果数) 1.where常用运算符: 比较运算符 > ...
- mysql数据库操作多表查询_MySQL数据库查询操作进阶——多表查询
多表查询 在大部分情况下,我们用到的表都是彼此相关联的,所以我们会有相当大的需求用到跨表的查询,这个时候我们就需要将相关联的表连起来做多表查询. 多表查询分为连表查询和子查询,连表查询即将相关联的表连 ...
- 简单mysql 查询_MySQL简单查询详解
MySQL的查询操作 单表查询:简单查询 多表查询:连接查询 联合查询 布尔条件表达式操作符= 等值比较 <=>:跟空值比较不会产生额外信息的等值比较 <>:不等值 <: ...
- mysql外连接的含义_MySQL连接查询,内连接,外连接,全连接,交叉连接_cly_32的博客-CSDN博客...
原文作者:起个花名好难 原文标题:MySQL连接查询,内连接,外连接,全连接,交叉连接 发布时间:2021-01-27 13:46:33 1.含义 当查询中涉及到多个表的字段,需要使用多表查询 sel ...
- mysql lambda查询_MySQL高级查询和编程基础
学习概述 随着数据库管理信息系统的日益复杂和庞大,软件应用系统对数据库设计.数据存储.数据查询和数据维护等提出了更高的要求.本书主要介绍数据库设计的方法和技术.子查询技术.MySQL编程基础知识和存储 ...
- mysql查询_MySQL常用查询
单表查询 ①查询所有 * mysql> select * from student; ②查询选中字段记录 mysql> select s_name from student; ③条 ...
- mysql的右连接查询_mysql连接查询(左连接,右连接,内连接)
一.mysql常用连接 INNER JOIN(内连接,或等值连接):获取两个表中字段匹配关系的记录. LEFT JOIN(左连接):获取左表所有记录,即使右表没有对应匹配的记录. RIGHT JOIN ...
最新文章
- 强化学习(三) - Gym库介绍和使用,Markov决策程序实例,动态规划决策实例
- 可解释性 or 准确性?AI 模型就一定不能两者兼得吗?
- 查看磁盤使用情况linux,在Linux系统下安装Filelight来查看磁盘使用情况
- 一文攻破枚举类型-C语言
- OpenCASCADE:拓扑 API之3D模型Defeaturing
- Leetcode--1028. 从先序遍历还原二叉树(Java)
- Python中添加中文注释报错SyntaxError: Non-UTF-8 code starting with '\xc1'
- 【java】java 多线程 异步计算 FutureTask 源码详解
- 如何去掉ArrayList重复的id
- lisp princ详解_LISP教程
- 第一款无代码应用平台搭建的设备管理系统
- HBuilderX 连接网易mumu手机模拟器进行App开发
- 渗透安全学习记录笔记
- vue基于Echarts的拖拽数据可视化功能实现
- NLP学习笔记30-SVM 对偶、KTT,核函数
- 计算机专业的笔记本电脑配置要求,笔记本电脑硬件配置全解析,看完让你轻松选择笔记本...
- Servlet 03
- 高性能 MySQL实战
- 音频混音接口调节音量及设置静音
- 疯狂的架构,BAT加华为、联想、新浪公司组织结构图一览
热门文章
- 戴尔 微博 服务器 销售,微博营销案例之戴尔
- 阿里云实践案例:使用ECS与OSS搭建个人云盘
- 这竟然是全世界最好的模式(商业大佬为之咂舌)
- 搜款网根据ID取商品详情 API
- AD参数微分非线性(DNL)与积分非线性(INL)
- 概率论与数理统计 | (16) 方差分析与一元线性回归
- C#中DataTime.Now函数详解
- 扑克牌游戏----花色从大到小按黑桃(Spade)、红桃(Heart)、梅花(Club)、方块(Diamond)排列
- 【转发分享】基于51单片机摩尔斯电码收发控制设计-基于51单片机智能恒温控制系统-基于51单片机霍尔测速直流电机设计-51单片机和MAX1898的智能手机充电器设计-基于51单片机的智能指纹考勤系统
- 二人行必有我师,探秘复旦大学EMBA2019级同侪私董会