group by 用法
时间: 2023-09-23 10:07:37 浏览: 26
GROUP BY 是 SQL 查询中的一个语句,用于将结果集按照一个或多个列进行分组。它常用于聚合函数(如 COUNT、SUM、AVG 等)的使用中,以便对每个分组计算聚合值。
例如,假设我们有一个名为 Students 的表,其中包含学生的姓名、课程和成绩。如果我们想要计算每个学生在每门课程中的平均成绩,可以使用以下 SQL 查询:
```
SELECT student_name, course, AVG(grade) AS avg_grade
FROM Students
GROUP BY student_name, course;
```
在上面的示例中,我们将结果集按照学生姓名和课程进行分组,并对每个分组计算平均成绩。注意,GROUP BY 子句中的列必须与 SELECT 子句中的列一致,否则会导致语法错误。
在 GROUP BY 子句中,还可以使用聚合函数以外的列,但是这些列必须在 SELECT 子句中出现,并且它们的值必须是分组的唯一值。例如,如果我们想要计算每个学生的总成绩和平均成绩,并按照总成绩的降序排列,可以使用以下 SQL 查询:
```
SELECT student_name, SUM(grade) AS total_grade, AVG(grade) AS avg_grade
FROM Students
GROUP BY student_name
ORDER BY total_grade DESC;
```
在上面的示例中,我们将结果集按照学生姓名进行分组,并计算每个学生的总成绩和平均成绩。然后,我们按照总成绩的降序排列结果集。注意,ORDER BY 子句必须在 GROUP BY 子句之后使用。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)