1、组函数

组函数:即多行函数,组函数将一组记录作为整体计算,每组记录返回一个结果,而不是每条记录返回一个结果。

2、常用的组函数有:

1》avg([distinct|all]expr):计算多行平均值,其中,expr可以是变量、常量或数据列,但其数据类型必须是数值类型。distinct表示不计算重复值;all用和不用的效果完全一样,表明需要计算重复值。

2》count({*|[distinct|all]expr}):用“*”号表示统计该表内的记录行数;distinct表示不统计重复值。

3》max(expr):计算多行expr的最大值,其中expr可以是变量、常量或数据列,其数据类型可以是任意类型。

4》min(expr):计算多行expr的最小值,其中expr可以是变量、常量或数据列,其数据类型可以是任意类型。

5》sum([distinct|all]expr):计算多行expr的总和,其中,expr可以是变量、常量或数据列,但其数据类型必须是数值型;distinct表示不计算重复值。

distinct和“*”不能同时使用。

3、分组函数group by

group by子句后通常跟一个或多个列名,表明查询结果根据一列或者多列进行分组,当一列或者多列组合的值完全相同时,系统会把这些记录当成一组。还有要注意的一个问题如下图:

对分组后的数据再进行过滤,则可以使用having子句。having子句后面也是一个条件表达式,只有满足该条件表达式的分组才会被选出来。

使用having子句,对分组的数据再次筛选。

having与where子句的区别:

1》不能在where子句中过滤组,where子句仅用于过滤行。过滤组必须使用having子句。

2》不能在where子句中使用组函数,having子句才使用组函数。

转载于:https://www.cnblogs.com/ZeroMZ/p/11370885.html

MySQL-第九篇分组和组函数相关推荐

  1. mysql 排名_SQL语句mysql排名、分组后组内排名、取各组的前几名

    数据: 一.整体排名(3种) -- 普通排名:从1开始,顺序往下排 set @rank =0;select city , score, @rank := @rank+1 rank from cs or ...

  2. 【基础篇】MySQL系列之分组和聚合函数组合使用

  3. python入门之函数调用内置函数_第九篇 python基础之函数,递归,内置函数

    阅读目录 一 数学定义的函数与python中的函数 二 为何使用函数 背景提要 三 函数和过程 四 函数参数 五 局部变量和全局变量 六 前向引用之'函数即变量' 七 嵌套函数和作用域 八 递归调用 ...

  4. MySQL初级篇——存储过程、存储函数的相关概念及应用举例

    文章目录: 1.什么是存储过程? 2.存储过程操作相关SQL 3.存储过程实操SQL 4.存储函数操作相关SQL 5.存储函数实操SQL 6.存储过程.存储函数的优缺点 1.什么是存储过程? 含义:存 ...

  5. mysql分组后组内排名_SQL实现group by 分组后组内排序

    在一个月黑风高的夜晚,自己无聊学习的SQL的时候,练习,突发奇想的想实现一个功能查询,一张成绩表有如下字段,班级ID,英语成绩,数据成绩,语文成绩如下图 实现 查询出 每个班级英语成绩最高的前两名的记 ...

  6. 最全MySQL基础篇

    文章目录 导入表的问题 第三章_最基本的SELECT语句 1. SQL语言的规则和规范 1) 基本规则 2) SQL大小写规范(建议遵守) 3) 注释 4) 命名规则 2. 基本的SELECT语句 1 ...

  7. MySQL数据库,分组函数篇

    MySQL数据库,分组函数篇 1.分组函数 极值 求和 平均值 列数和 2.分组查询 3.小练习 4.大BOSS 1.分组函数 极值 示例表内容见此篇文章 找出最高工资: mysql> sele ...

  8. mysql 集合 思想_面向集合的思维编写SQL(第九篇 --- “我说的是:苹果柿子李子栗子梨的那个橘子啊”)...

    max:屏幕前的同学,这个时候还在天善智能看博文,肯定是单身狗吧... 猿同学:520是什么鬼,我的世界只有1024... 大家好,距离上篇(面向集合的思想编写SQL的第八篇)已经过去N多个月了... ...

  9. MySql基础篇---002 SQL之SELECT使用篇: 基本的SELECT语句,运算符,排序与分页,多表查询,单行函数,聚合函数,子查询

    第03章_基本的SELECT语句 讲师:尚硅谷-宋红康(江湖人称:康师傅) 官网:http://www.atguigu.com 1. SQL概述 1.1 SQL背景知识 1946 年,世界上第一台电脑 ...

  10. MySQL中的组函数(聚合函数)

    MySQL中的组函数(聚合函数) 组函数操作行集,给出每组的结果.组函数不象单行函数,组函数对行的集合进行操 作,对每组给出一个结果.这些集合可能是整个表或者是表分成的组. 一.组函数与单行函数的区别 ...

最新文章

  1. 使用EntityFramework6连接MySql数据库(db first方式)
  2. linux部署MantisBT(三)部署MantisBT
  3. 中国计算机学会论坛上5专家激辩:量子计算机10年内成熟?中美之间还有5-6年差距...
  4. Java后端向前端传递数据,挥泪整理面经
  5. python中的zip是什么意思_python中zip是什么函数
  6. Hadoop的调度器总结(转)
  7. C/C++ debug(一)
  8. Powershell - 获取OS版本信息和catpion信息
  9. vsc写vue生成基本代码快捷键_Vscode添加用户代码实现基础模板快速调用
  10. 我们需要什么样的计算
  11. m3u8手机批量转码_M3U8批量转换app-M3U8批量转换MP4软件下载v1.0 安卓版-西西软件下载...
  12. python gui与pyside
  13. android信鸽推送通知栏,【信鸽推送】点击推送通知后,默认会从程序Launcher进入,返回时会回到主界面的问题...
  14. 考勤系统 java_java中一个简单考勤系统
  15. QT在状态栏添加label
  16. 建房遮阳标准的计算机方法,农村建房遮阴计算标准,看看怎么计算?
  17. 如何统计excel中的sheet数量
  18. 智能终端信息安全概念(五):硬件安全技术—加密芯片
  19. 酷盘 文件服务器,酷盘网页登陆
  20. Codeforces Round #451 (Div. 2)

热门文章

  1. LINUX编译java3d/j3d
  2. 虚拟机中编译代码死机,加大内存解决
  3. LINUX下载编译zrtp
  4. 吾智商低,对于VS的char实在是不知所云
  5. FireFox 32不支持64位的NPAPI dll插件
  6. 古代气候暖和时,雪山雪线如何变化
  7. gstreamer之RTSP Server一个进程提供多路不同视频
  8. 管理感悟:怎样讲清楚自己的想法
  9. 织梦++高级搜索php,织梦模板功能进阶 高级搜索页面advancedsearch.php调用自定义字段...
  10. java debug 宏_#ifdef _DEBUG用法小结