学生成绩管理数据库

select count( distinct Sno) as 学生人数 from Grade where Cno=(select Cno from Course where Cname='数据库') 在下面窗口显示查询结果如下图3-15所示。

图3-15

8) 找出某年级某班成绩为空的学生姓名

找出班级号为“00314”的学生成绩为空的姓名。 输入sql为:

select Sname as 姓名 from Student where Clno='00314' and Sno NOT in (select Sno from Grade where Clno='00314') 在下面窗口显示查询结果如下图3-16所示。

第 33 页 共 50 页

图3-16

3. 依据上述的四个表,用SELECT嵌套查询(子查询)完成如下查询 1) 找出与某同学在同一个班的同学; 找出与“刘山”同学在一个班的同学。 输入sql为:

select Sname as 姓名 from Student where Clno=(select Clno from Student where Sname='刘山') and Sname!='刘山' 在下面窗口显示查询结果如下图3-17所示。

第 34 页 共 50 页

图3-17

2) 找出所有与某同学有相同的选修课程的学生信息; 找出所有与“李用”同学有相同的选修课程的学生信息。 输入的sql语句如下:

select * from student where Sname !='李用' and Sno in (select Sno from Grade where Cno in (select Cno from Grade where Sno=(select Sno from student where Sname='李用'))) 在下面窗口显示查询结果如下图3-18所示。

图3-18

第 35 页 共 50 页

3) 找出年龄在23和25之间的学生信息; 输入sql语句为:

select * from student where Sage>=23 and Sage<=25 在下面窗口显示查询结果如下图3-19所示。

图3-19

4) 找出选修了某课程的学生学号和姓名; 找出选修了“数据库”课程的学生学号和姓名。 输入的sql语句为:

select Sno,Sname from Student where Sno in (select Sno from Grade where Cno =(select Cno from Course where Cname='数据库')) 在下面窗口显示查询结果如下图3-20所示。

第 36 页 共 50 页

联系客服:779662525#qq.com(#替换为@)