# 多行处理行数(分组函数)

特点:输入多行、最终输出一行

# 注意:

分组函数在使用时必须先进行分组,然后才能使用。
如果你没有对数据进行分组,整张表默认为一组

# count 计数

计算员工数量总和
select count (name) from emp;

# sum 求和

计算工资合
select sum (sal) from emp;

# avg 平均值

计算平均工资
select avg (sal) from emp;

# max 最大值

找出最高工资
select max (sal) from emp;

# min 最小值

找出最低工资
select min (sal) from emp;

# 分组函数使用时,需要注意的地方

1. 分组函数自动忽略 NULL, 不需要提前处理。
 例如:求所有员工津贴/补助的总和。
    select sum(comm) from emp;//不需要加where comm is not null条件。
2. 分组函数count(*) 和 count(具体字段)的区别。
   1. count(具体字段):表示统计该字段下所有不为 NULL 的元素的总数。
   2. count(*):统计表中所有行数。
3. 分组函数不能直接用在where子句中。
 例如:找出比最低工资高的员工信息。
 select ename, sal from emp where sal > min(sal);// 错误SQL语句
4. 所有分组函数可以组合起来一起使用。