示例数据库DB_SC中,有三个表: 学生信息表:Student(Sno,Sname,Sage,Ssex,Sdept) 课程信息表:Course(Cno,Cname,Cpno,Ccredit) 选修记录表:SC(Sno,Cno,Grade) Sno是学生学号,Sname是学生姓名,Sage学生年龄,Ssex是学生性别,Sdept学生所在系,Cno是课程号,Cname是课程名,Grade是学生成绩。用sql语句回答1、统计每个学生的学号及平均成绩 2、查询计算机科学系的学生与年龄不大于20岁的学生的
时间: 2024-01-02 17:01:58 浏览: 74
1、统计每个学生的学号及平均成绩
```sql
SELECT Sno, AVG(Grade) AS AvgGrade FROM SC GROUP BY Sno;
```
2、查询计算机科学系的学生与年龄不大于20岁的学生
```sql
SELECT * FROM Student WHERE Sdept = '计算机科学系' AND Sage <= 20;
```
相关问题
示例数据库DB_SC中,有三个表: 学生信息表:Student(Sno,Sname,Sage,Ssex,Sdept) 课程信息表:Course(Cno,Cname,Cpno,Ccredit) 选修记录表:SC(Sno,Cno,Grade) Sno是学生学号,Sname是学生姓名,Sage学生年龄,Ssex是学生性别,Sdept学生所在系,Cno是课程号,Cname是课程名,Grade是学生成绩。查询成绩大于等于85分以上的学生的姓名、课程号和成绩,并按成绩的降序排列结果
可以使用以下 SQL 语句查询:
SELECT Student.Sname, SC.Cno, SC.Grade
FROM Student, SC
WHERE Student.Sno = SC.Sno AND SC.Grade >= 85
ORDER BY SC.Grade DESC;
该语句会返回成绩大于等于85分以上的学生的姓名、课程号和成绩,并按成绩的降序排列结果。其中,通过 `WHERE` 子句连接了 `Student` 和 `SC` 两个表,通过 `Student.Sno = SC.Sno` 来关联学生信息表和选修记录表。`SC.Grade >= 85` 用来过滤成绩大于等于85分的记录。最后使用 `ORDER BY` 子句按成绩的降序排列结果。
学生-课程数据库 • 学生表:Student(Sno,Sname,Ssex,Sage,Sdept) • 课程表:Course(Cno,Cname,Cpno,Ccredit) • 学生选课表:SC(Sno,Cno,Grade)
• Sno:学生编号,主键
• Sname:学生姓名
• Ssex:学生性别
• Sage:学生年龄
• Sdept:学生所在院系
• Cno:课程编号,主键
• Cname:课程名称
• Cpno:先修课程编号,若无先修课程则为NULL
• Ccredit:课程学分
• Grade:学生选课成绩,若未考试则为NULL
注:SC表是学生选课表,其中Sno和Cno为外键,分别指向Student表和Course表的主键。