MySQL基础_基础查询_进阶4_分组函数

配套视频见下方网址,相关文件见视频评论区
[尚硅谷MySQL教程](https://www.bilibili.com/video/BV12b411K7Zu)

二、分组函数

/*
功能:用作统计使用,又称为聚合函数或统计函数或组函数

分类:
sum 求和、avg平均值、max最大值、min最小值、count计算个数

特点:
1.sum、avg一般用于处理数值型
max、min、count可以处理任何类型

2.是否忽略null值
以上分组函数都忽略null值

3.可以和distinct搭配使用去重

4.count函数
一般使用count(*)统计行数

5.和分组函数一同查询的字段有限制
和分组函数一同查询的字段要求是group by后的字段

*/

1、简单的使用

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

SELECT SUM(salary) 和,AVG(salary) 平均,MIN(salary) 最低,
MAX(salary) 最高,COUNT(salary) 个数
FROM employees;

SELECT SUM(salary) 和,ROUND(AVG(salary),2) 平均,MIN(salary) 最低,
MAX(salary) 最高,COUNT(salary) 个数
FROM employees;

2.和distinct搭配

SELECT SUM(DISTINCT salary),SUM(salary) FROM employees;

SELECT COUNT(DISTINCT salary),COUNT(salary) FROM employees;

3.count函数的详细介绍

SELECT COUNT(salary) FROM employees;

SELECT COUNT(*) FROM employees;

SELECT COUNT(1) FROM employees;

效率:
MYISAM存储引擎下,COUNT()的效率高
INNODB 存储引擎下,COUNT(
)和COUNT(1)的效率差不多,
比COUNT(字段)更高一些

原文地址:https://www.cnblogs.com/xbycf/p/13718605.html