Advertisement

数据库试题和答案

阅读量:

以下内容为某企业数据库相关笔试题目及其对应的个人总结性解答,如有更优解法或见解,欢迎各位交流指正!

数据表

学生信息表(S#, Sname)包含10000条数据记录,课程信息表(Cource, C#, Cname, T#)共有9条数据记录,选课成绩表(SC, S#, C#, Score)总计89991条数据记录,教师信息表(Teacher, T#, Tname)则仅有3条数据记录。上述数据量的设定并非题目所规定,而是由我自行模拟生成的。

试题

1、筛选出在课程001中取得的成绩高于课程002成绩的学生身份标识;

复制代码
 SELECT sc1.`S#` from sc sc1 WHERE sc1.`C#`=1 AND

    
 EXISTS
    
 (SELECT sc1.`S#` from sc sc2 WHERE sc2.`C#`=2 and sc1.`S#`=sc2.`S#` AND sc1.Score > sc2.Score
    
 )
    
 上面的用法性能太差了。
    
  
    
  
    
 [SQL] SELECT sc1.`S#` from sc sc1, sc sc2 WHERE sc1.`S#`=sc2.`S#` and sc1.`C#`=1 AND sc2.`C#`=2 AND sc1.Score > 

全部评论 (0)

还没有任何评论哟~