count |
取得记录数 |
sum |
求和 |
avg |
取平均 |
max |
取最大的数 |
min |
取最小的数 |
注意:分组函数自动忽略空值,不需要手动的加where条件排除空值。
select count(*) from emp where xxx; 符合条件的所有记录总数。
select count(comm) from emp; comm这个字段中不为空的元素总数。
注意:分组函数不能直接使用在where关键字后面。
mysql> select ename,sal from emp where sal > avg(sal);
ERROR 1111 (HY000): Invalid use of group function
● 取得所有的员工数
select count(*) from emp;
Count(*)表示取得所有记录,忽略null,为null的值也会取得;
● 取得津贴不为null员工数
select count(comm) from emp;
采用count(字段名称),不会取得为null的记录。
● 取得工作岗位的个数
select count(distinct job ) from emp;
可以将这些聚合函数都放到select中一起使用;
select count(*),sum(sal),avg(sal),max(sal),min(sal) from emp;