上大学数据库上机作业《数据库系统与应用》上机习题************************************************************************************************* 第五部分、SQL 高级应用一、做书上第十章的例题二、利用上次上机的学生_课程数据库1. 求选修了高等数学的学生学号和姓名.USE 学生课程SELECT 学生。学号,姓名,选课。课程号FROM 学生,选课,课程WHERE 学生.学号=选课。学号 AND 课程.课程号=选课.课程号 AND 课程名=’高等数学'2. 求C1课程的成绩高于张三的学生学号和成绩.USE 学生课程SELECT x。学号,x.成绩FROM 选课 x,选课 yWHERE x。课程号='C1’ AND x。成绩>y。成绩 AND y。学号='S4' AND y.课程号='C1’ORDER BY x。学号 DESC第二种:USE 学生课程SELECT 学号,成绩FROM 选课WHERE 课程号=’C1’ AND 成绩>(SELECT 成绩 FROM 选课,学生 WHERE 课程号=’C1'AND 姓名=’张三’AND 选课.学号=学生。学号)3. 求其他系中比自动化学院某一学生年龄小的学生。USE 学生课程SELECT 学号,姓名,年龄,单位FROM 学生WHERE 年龄〈(SELECT MAX(年龄) FROM 学生 WHERE 单位=’自动化学院') AND 单位!=’自动化学院’ ORDER BY 学号 DESC4. 求其他系中比自动化学院学生年龄都小的学生.USE 学生课程SELECT 学号,姓名,年龄,单位FROM 学生WHERE 年龄<(SELECT MIN(年龄) FROM 学生 WHERE 单位='自动化学院') AND 单位!=’自动化学院’ ORDER BY 学号 DESC5. 求选修了C2课程的学生的姓名。USE 学生课程SELECT 姓名FROM 学生,选课WHERE 学生.学号=选课.学号 AND 课程号=’C2’6. 求没有选修 C2 课程的学生的姓名。USE 学生课程SELECT DISTINCT 姓名FROM 学生,选课WHERE 学生.学号=选课.学号 AND 姓名 not in (SELECT 姓名FROM 学生,选课 WHERE 学生。学号=选课。学号 AND 选课.课程号='C2')7. 查询选修了C1、C2、C3、C7全部四门课程的学生的姓名.USE 学生课程SELECT 姓名FROM 学生WHERE 学号 in(SELECT 学号 FROM 选课 WHERE 课程号=’C1') AND 学号 in(SELECT 学号 FROM 选课 WHERE 课程号=’C2’) AND 学号 in(SELECT 学号 FROM 选课 WHERE 课程号=’C3’) AND 学号 in(SELECT 学号 FROM 选课 WHERE 课程号=’C7')第二种:USE 学生课程SELECT 姓名FR...