MySQL学习笔记之聚集函数 sum() avg() min() max() count()

汇集函数(《MySQL必知必会》中称其为聚集函数)主要是处理整个表的一列或几列的数据
  • sum() 求和

  • avg() 求平均值

  • max() 求最大值或尾行数据

  • min() 求最小值或首行数据

  • count() 统计 计数

  1. sum() avg() 主要用于对数值进行统计和计算;min() max() count() 都可以
  2. 以上所有的函数都默认忽略null,但是COUNT()统计所有行数,不忽略null
    COUNT(1)也可以用于统计所有函数
    在MYISAM存储引擎下,COUNT()的效率高
    在INNODB存储引擎下,COUNT(*)和COUNT(1)差不多,但是比COUNT(字段)高
  3. min() max()遇到字符类型时,返回第一行或最后一行
  4. 与distinct搭配,先去重,然后再统计分析
  5. 和分组函数一同查询的字段要求是group by后的字段

针对第4条

SELECT SUM(DISTINCT salary) ,SUM(salary) FROM employees; --第一列的含义是找出工资不重样的各个工资数据,然后求和
SELECT COUNT(DISTINCT salary),COUNT(DISTINCT commission_pct) FROM employees;

案例:

1.查询员工工资的最大值、最小值、平均值和总和

SELECT MAX(salary),MIN(salary),AVG(salary),SUM(salary) FROM employees;

2.查询员工表中的最大入职时间和最小入职时间的相差天数

SELECT MAX(hiredate),MIN(hiredate),DATEDIFF(MAX(hiredate),MIN(hiredate))
AS DIFFERENCE
FROM employees;

3.查询部门编号为90的员工个数

SELECT COUNT(department_id) FROM employees
WHERE department_id = 90;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

咖啡与乌龙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值