文章目录

  • 5. 分组函数
    • 分组函数导图
    • 简单的使用
    • 例题

5. 分组函数

分组函数导图

功能:用作统计使用,又称为聚合函数或统计函数或组函数。
分类:sun求和、avg平均值、max最大值、 min最小值、 count计算个数
语法:select sum(字段名) from 表 ;

特点:

  1. 一般用于处理数值类型
  2. 以上函数都忽略null值
  3. 可以和distinct关键字搭配使用,实现去重除运算。
  • count(*):统计元组的个数

  • count(列名):计算一列中值得个数

  • sum(列名):计算一列值的总和

  • max(列名):求一列值的最大值

  • min(列名):求一列值的最小值

  • 去重:distinct
    count(distinct custcity) :去重查统计custcity列中的项的个数

简单的使用

  1. 求一下工资之和
    select sum(salary) from employees;

  2. 同理
    select avg(salary) from employees;
    select min(salary) from employees;
    select max(salary) from employees;
    select count(salary) from employees;

  3. 可以同时放多个
    select sum(salary) , avg(salary) , min(salary) , max(salary) , count(salary) from employees;

  4. 叠加其他函数使用
    select round(sum(salary)) from employees;将工资求和的结果保留两位小数。

  5. 参数的支持类型
    一般只支持数字类型,但是放入字符类型也不会报错,而是输出0,但是不提倡放入字符类型。

  6. 忽略null值
    比如求和的时候算平均的时候,null值是不参与运算的。(null值加任何数都等于null)

  7. 和distinct搭配,去重再运算
    select sum(salary) from employees;所有数求和
    select sum(distinct salary) from employees;去重之后再求和
    其他的也可以像sum这样去重之后再进行运算。

  8. count的函数的详细介绍
    统计employees数据库中的所有行数。
    select count(*) from employees;
    count(*)就表示统计整个数据库

select count(1) from employees;
该语句也会输出和count(*)同样的值是统计数据库的行数,count(1)就表示在数据库的每一行前面都加上1个2,然后统计1的个数,也就是统计数据库的函数。把1换成其他的常量或字符串同理。

myisam存储引擎下,count()的效率最高。
innodb存储引擎下,count(
)和count(1)的效率差不多,比count(字符)要高一些。
总之用count(*)为最好

例题

  1. 查询员工表中,最大入职时间和最小入职时间相差天数。
    减法函数:datediff(a,b)表示a-b
    select datediff(max(hiredate),min(hiredate)) as date from empployees ;

  2. 查询一下部门编号,为90的员工个数。
    select count(*) from employees where department_id =90 ;

分组函数——MySQL相关推荐

  1. mysql sum计算效率很慢_MySQL基础之分组函数

    分组函数主要用于统计,又称为聚合函数.统计函数或组函数. 常见的分组函数有: SUM(expr) 求和AVG([DISTINCT] expr) 求平均值MAX(expr) 求最大值MIN(expr) ...

  2. MySQL学习-排序与分组函数

    操作的表 mysql> select * from emp; EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO 7369 SMITH CLERK 7902 ...

  3. MySql 实现Row_Number(Partition by)分组函数效果

    前言:MySql没有像SqlServer 和 Oracle那样的Row_Number(Partition by)分组函数,但是可以用SUBSTRING_INDEX和GROUP_CONCAT2个函数实现 ...

  4. Mysql —— 多行/聚合/分组函数 打字练习

    Mysql -- 多行/聚合/分组函数 打字练习 工欲善其事,必先利其器--首先我们需要有打字练习的工具 ,这里我推荐的是 金山打字通,下载链接为

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

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

  6. MySQL数据处理函数,分组函数,分组查询【MySQL】

    Java养成计划----学习打卡第六十六天 内容导航 单行处理函数(续) CONCAT 字符串拼接函数 LENGTH 字符串长度 TRIM 去空格 ROUND 四舍五入 RAND 生成随机数 IFNU ...

  7. 数据库MySQL常见函数(含分组函数与复杂分组查询)

    文章目录 一.常见函数介绍 1. 概念: 2.好处: 3.调用格式: 4.分类: 二.单行函数 1.字符函数: 2.数学函数: 3.日期函数 4.其他函数 5.流程控制函数 二.分组函数 1.概念 2 ...

  8. Mysql进阶学习(四)分组函数与分组查询

    Mysql进阶学习(四)分组函数与分组查询 一.进阶4:分组函数 1.简单的使用 1.1 SUM 求和 1.2 AVG 求平均值 1.3MIN 最小值 1.4 MAX 最大值 1.5 COUNT求总数 ...

  9. mysql 分组链接_MySQL学习笔记(四)——分组函数,分组查询,链接查询

    MySQL学习笔记(四)--分组函数,分组查询,链接查询 做者:就叫易易好了 日期:2020/11/18 1.分组函数 功能:用做统计使用,又称为聚合函数或统计函数mysql 分类:web sum函数 ...

最新文章

  1. 机器学习算法库scikit-learn的安装
  2. LeetCode题库第888题 公平的糖果棒交换
  3. 财务系统专用服务器中标公告,东南大学财务处服务器存储-招标办公室.doc
  4. Linux工程师新法宝:在Visual Studio上用C++ 写Linux
  5. lcd刷新慢_LCD1602刷新率很慢的问题
  6. java容器类2:Map及HashMap深入解读
  7. springboot 整合mybatisplus输出sql语句不输出结果集
  8. frame中src怎么设置成一个变量_在 Figma 中如何选择 group(组)或 frame(画框)?...
  9. yii2 beta版 执行流程
  10. 库克:10年内可能离开苹果
  11. [InnoDB系列] - InnoDB释放表空间
  12. 面试官:有没有比读写锁更快的锁?
  13. 排序算法之二路归并排序
  14. Cf#595 (Div. 3)E-DP题
  15. CiteSpace分析专利概况
  16. 用SPSS-Modeler分析银行信用风险评分方法
  17. python浪漫微信_教你用python做一个哄女友的微信自动回复机器人
  18. Android判断用户是否已完成设置向导(开机向导)
  19. Typhon之异常错误克星TLSException
  20. 详述IT项目文档类别

热门文章

  1. 面试题:亮着电灯的盏数
  2. 使用Eclipse创建JavaWeb动态网页项目(一)学习使用Servlet
  3. 从资源的角度统一看to C和to B商业模式
  4. 手握大数据互联网对抗传统电影底气足
  5. CefSharp基本配置 缓存 跨域 执行js
  6. 第四部分 :特殊用途的句子(强调句)
  7. 北京网站建设公司:移动网站关键词快速排名技巧分享
  8. 表格render函数中使用组件
  9. 为什么苹果文件连接服务器没反应,win7系统连接苹果设备后没反应怎么办
  10. matlab i5 i7,i5性能等于i7?全负荷压力详细测试告诉你