张敏玉

2020-07-09   阅读量: 963

Mysql 数据分析师 大数据

MySQL的分组查询

扫码加入数据分析学习群


在 select 语句中,允许使用 group by 子句将查询结果按照一个或多个字段进行分组,字段值相同的为一组,对每个组进行聚合计算,实现数据的分组汇总。


语法:select<字段名列表> from <表名> [where <查询条件>] group by <字段名列表>

  • select 后的字段名应该是分组字段和聚合字段。

  • group by分组字段可以是一个或多个。

  • 如果分组字段中包含有null值,则null值所在的行单独分为一组。

单字段分组:查询各部门的平均工资

mysql> select deptno,avg(sal) 平均工资 from emp group by deptno;

| deptno | 平均工资 |

| 10 | 2916.6666666666665 |
| 20 | 2175 |
| 30 | 1566.6666666666667 |


多字段分组:查询各部门不同职位的平均工资


mysql> select deptno,job,avg(sal) 平均工资 from emp group by deptno,job;

| deptno | job | 平均工资 |

| 10 | clerk | 1300 |
| 10 | manager | 2450 |
| 10 | persident | 5000 |
| 20 | analyst | 3000 |
| 20 | clerk | 950 |
| 20 | manager | 2975 |
| 30 | clerk | 950 |
| 30 | manager | 2850 |
| 30 | salesman | 1400 |



18.9188 5 2 关注作者 收藏

评论(0)


暂无数据

推荐课程