1、分组函数总结
函数,类似java中的方法
叫什么?函数名
干什么?函数功能
分组函数,又称为统计函数或聚合函数
length('john')
max(salary)
分类:
max():最大值
min():最小值
sum():和
avg():平均值
count():计算非空的个数
特点:
1、sum、avg只支持数值型,count、max、min支持任何类型
2、这几个分组函数,都忽略null值
3、count()分组函数,支持以下写法
count(*) 建议使用
count(1)
表示 查询结果集的行数
2、使用数据库
USE myemployees;
3、查询分组函数
SELECT MAX(salary) 最大值 FROM employees;
SELECT MIN(salary) 最小值 FROM employees;
SELECT SUM(salary) 和 FROM employees;
SELECT AVG(salary) 平均值 FROM employees;
SELECT COUNT(salary) 个数 FROM employees;
SELECT MAX(salary) 最大值,SUM(salary) 和 FROM employees;
4、关于sum 和avg
/*
1.只支持数值型
2.sum和avg都忽略null值
*/
SELECT AVG(last_name) FROM employees;
SELECT * FROM employees;
SELECT SUM(commission_pct)/107,AVG(commission_pct) FROM employees;
5、关于max和min
/*
1.支持任何类型
2.sum和avg都忽略null值
*/
SELECT MAX(commission_pct),MIN(commission_pct) FROM employees;
6、关于count
SELECT COUNT(commission_pct) FROM employees;
SELECT COUNT(DISTINCT department_id) FROM employees;
7、查询结果集中的行数
/*
count(1)的性能没有count(*)高
因为count(*),sql服务器对其进行了优化,所以效率高
*/
SELECT COUNT(*) FROM employees;
SELECT COUNT(*) FROM employees WHERE department_id>30;
SELECT COUNT(1) FROM employees;
8、问题:查询员工表最大工资和员工号?
答:不能!!!!
SELECT MAX(salary),employee_id FROM employees;