- count 取得记录数
- sum 求和
- avg 取平均
- max 取最大的数
- min 取最小的数
一count
查询所有的员工数
取得津贴不为NULL的员工
- MysqL> select count(*) from emp;
- +----------+
- | count(*) |
- +----------+
- | 14 |
- +----------+
注:count(字段名)会自动去掉NULL,不需要手动添加过滤条件。
- MysqL> select count(comm) from emp;
- +-------------+
- | count(comm) |
- +-------------+
- | 4 |
- +-------------+
二sum
Sum可以取得某一个列的和,null会被忽略。
取得津贴的合计
- MysqL> select sum(comm) from emp;
- +-----------+
- | sum(comm) |
- +-----------+
- | 2200.00 |
- +-----------+
三avg
取得某一列的平均值
取得平均薪水
- MysqL> select avg(sal) from emp;
- +-------------+
- | avg(sal) |
- +-------------+
- | 2073.214286 |
- +-------------+
四max
取得某个一列的最大值
取得最高薪水
- MysqL> select max(sal) from emp;
- +----------+
- | max(sal) |
- +----------+
- | 5000.00 |
- +----------+
五min
取得某个一列的最小值
取得最低薪水
- MysqL> select min(sal) from emp;
- +----------+
- | min(sal) |
- +----------+
- | 800.00 |
- +----------+
六组合聚合函数
可以将这些聚合函数都放到select中一起使用
- MysqL> select count(*),sum(sal),avg(sal),max(sal),min(sal) from emp;
- +----------+----------+-------------+----------+----------+
- | count(*) | sum(sal) | avg(sal) | max(sal) | min(sal) |
- +----------+----------+-------------+----------+----------+
- | 14 | 29025.00 | 2073.214286 | 5000.00 | 800.00 |
- +----------+----------+-------------+----------+----------+