查询“95033”班学生所选所有课程的平均分,包括cno,cname,avgscore,avgscore表示平均成绩
时间: 2024-03-18 08:38:30 浏览: 47
好的,根据你的要求,我来给你提供一个 SQL 查询语句:
```
SELECT c.cno, c.cname, AVG(sc.score) AS avgscore
FROM student s JOIN score sc ON s.sno = sc.sno
JOIN course c ON c.cno = sc.cno
WHERE s.class = '95033'
GROUP BY c.cno, c.cname;
```
这个 SQL 查询语句可以查询出班级为“95033”的学生所选的所有课程的平均分,并且包括课程编号和课程名称。其中,AVG函数可以求出平均分数,GROUP BY语句可以让查询结果按照课程编号和课程名称进行分组。
相关问题
写出SQL语句,查询“95033”班学生所选所有课程的平均分,包括Cno、Cname、avgscore,avgscore表示平均成绩,将运行无误后的SQL语句写入答题文件夹中的MYSQL1.TXT保存。
假设我们有以下三个表格:
学生表格(Student):
| Sno | Sname | Ssex | Sage | Sdept |
|-----|--------|------|------|--------|
| 101 | 张三 | 男 | 18 | 计算机 |
| 102 | 李四 | 女 | 19 | 通信 |
| 103 | 王五 | 男 | 18 | 自动化 |
| 104 | 赵六 | 男 | 20 | 计算机 |
| 105 | 钱七 | 女 | 19 | 通信 |
课程表格(Course):
| Cno | Cname | Tno | Ctime | Ccredit |
|-----|---------|-----|-------|---------|
| 001 | 数据库 | 101 | 32 | 4 |
| 002 | 计算机 | 102 | 48 | 3 |
| 003 | 通信 | 103 | 32 | 3 |
| 004 | 自动化 | 104 | 64 | 4 |
成绩表格(Score):
| Sno | Cno | Score |
|-----|-----|-------|
| 101 | 001 | 90 |
| 101 | 002 | 80 |
| 101 | 003 | 85 |
| 102 | 002 | 75 |
| 103 | 002 | 88 |
| 104 | 001 | 92 |
| 104 | 003 | 82 |
| 105 | 003 | 85 |
| 105 | 004 | 88 |
要查询"95033"班学生所选所有课程的平均分,可以使用以下SQL语句:
```
SELECT Course.Cno, Course.Cname, AVG(Score.Score) AS avgscore
FROM Student, Course, Score
WHERE Student.Sno = Score.Sno AND Course.Cno = Score.Cno AND Student.Sdept = '95033'
GROUP BY Course.Cno, Course.Cname;
```
执行以上语句将得到以下结果:
| Cno | Cname | avgscore |
|-----|---------|----------|
| 001 | 数据库 | 90.0000 |
| 003 | 通信 | 83.5000 |
注意:以上语句中的第4行WHERE条件是用来筛选"95033"班学生的,如果需要查询其他班级的话,需要修改该条件。
建立视图查看课程号cno,课程名cname,课程平均成绩avggrade
好的,可以使用如下的 SQL 语句来建立视图:
```
CREATE VIEW course_avg_grade AS
SELECT cno, cname, AVG(grade) AS avggrade
FROM course
GROUP BY cno, cname;
```
这个视图将会显示课程号(cno)、课程名(cname)和平均成绩(avggrade)。您可以通过以下语句查询该视图:
```
SELECT * FROM course_avg_grade;
```
注意,视图并不实际存储数据,它只是一个虚拟表,可以像普通表一样查询。
相关推荐
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://img-home.csdnimg.cn/images/20210720083646.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)
![](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)