建立一个名为StudentSumView的视图,包含计算机系学生所有学生学号和总成绩利用mysql语言
时间: 2024-12-15 16:23:36 浏览: 22
在MySQL中创建一个名为`StudentSumView`的视图,用于显示计算机系所有学生的学号和总成绩,假设我们有一个名为`Students`的表,其中包含字段`student_id`(学号)和`score`(成绩),并且有一个`Departments`表,记录了学生所属的部门信息,其中`department_name`列可以用来识别计算机系。我们可以使用以下SQL语句来创建这个视图:
```sql
CREATE VIEW StudentSumView AS
SELECT s.student_id, SUM(s.score) as total_score
FROM Students s
JOIN Departments d ON s.department_id = d.department_id
WHERE d.department_name = '计算机系'
GROUP BY s.student_id;
```
这个查询做了以下几件事:
1. `SELECT s.student_id, SUM(s.score)`:选择了每个学生的学号和他们的总成绩(通过SUM函数计算每人的分数之和)。
2. `FROM Students s JOIN Departments d ON s.department_id = d.department_id`:将`Students`表与`Departments`表连接起来,基于每个学生的`department_id`。
3. `WHERE d.department_name = '计算机系'`:筛选出计算机系的学生。
4. `GROUP BY s.student_id`: 按照学号分组,这样每个学号都会有其对应的一行结果。
阅读全文